分类 默认 下的文章

最近在使用fastadmin框架(tp5.1)实现后台的基本功能,在selectpage需要显示更多信息,根据文档信息进行改造实现以下功能:

A-1.png

分别在控制器、以及view文件进行改造。

controller 控制器代码部分

#增加显示更多字段
protected $selectpageFields = "id,batch_number,coupons_date,coupons_money,coupons_remain";

View 视图部分 本实例在add.html

                <div class="col-xs-12 col-sm-8">
                    <input id="c-batch_number" data-rule="required" data-source="Batch/selectpage" class="form-control selectpage" name="row[batch_number]" type="text" value="" data-primary-key="batch_number" data-field="batch_number" data-format-item="{batch_number}-(有效期:{coupons_date}-剩余:{coupons_remain})">
                </div>

记录之,方便后期使用。

如出现乱码,请以utf-8文件编码保存

            #redis 统计访问量
        $redis = new \Redis();
        $redis_conf = config('redis');
        $redis->connect($redis_conf['host'],$redis_conf['port']);
        $redis_status =$redis->auth($redis_conf['password']) or false;
        if($redis_status){
              $redis->select($redis_conf['select']);
              $activity_id=$this->activity_id;
              #记录日访问
              $daily =$activity_id.'-'.date("Y-m-d");
              $viskey = $redis->exists($daily);
              $value =$redis->get($daily);
              if($viskey){
                 $redis->incr($daily);
              }else{
                 $redis->set($daily,1);
              }
        }

controller

/**

  • 自定义selectpage
    */

public function select_goods(){

list($where, $sort, $order, $offset, $limit) = $this->buildparams();
$list = $this->model
            ->with(['goodslists'])
            ->field('goodslists.name as name,goods_id')
            ->where($where)
            ->order($sort, $order)
            ->paginate($limit);
    $result = array("total" => $list->total(), "rows" => $list->items());
    return json($result);

}

model

public function goodslists()
{

return $this->belongsTo('app\admin\model\gascard\Goods', 'goods_id', 'id', [], 'LEFT')->setEagerlyType(0);

}

json_encode($value,$options)

其中有2个比较常用到的参数

JSON_UNESCAPED_UNICODE(中文不转为unicode ,对应的数字 256)

JSON_UNESCAPED_SLASHES (不转义反斜杠,对应的数字 64)

通常json_encode只能传入一个常量,如果同时使用2个常量怎么办?

JSON_UNESCAPED_UNICODE + JSON_UNESCAPED_SLASHES = 320

使用方法:json_encode($arr,320);即可完成同时使用2个常量。

$arr =array('hello'=>'word/世界')
$res=json_encode($arr,320);