FastAdmin:selectPage数据源修改

 public function index()
    {
        //设置过滤方法
        $this->request->filter(['strip_tags', 'trim']);
        if (false === $this->request->isAjax()) {
            return $this->view->fetch();
        }

        //如果发送的来源是 Selectpage,则转发到 Selectpage
        if ($this->request->request('keyField')) {
            $data = $this->selectpage();
            //默认return 返回return函数对象  json(['list' => $list, 'total' => $total]);
            //此处提取对象进行单独处理
            $list = $data->getData()['list'];
            $total = $data->getData()['total'];
            foreach ($list as $index => $row){
                //value返回string,find/select返回对象/数组,需要键名提取
                $tagsid = Db::table('page_tags_child')->where('id', $row['id'])->value('tagsid');
                $tag = Db::table('page_tags')->where('id', $tagsid)->value('tag');
                $list[$index]['tag'] = $row['tag']."  /  ".$tag;
            }
            return  json(['list' => $list, 'total' => $total]);
        }
        
        [$where, $sort, $order, $offset, $limit] = $this->buildparams();
        $list = $this->model
            ->alias('child')
            ->join('page_tags tags','tags.id = child.tagsid')
            ->field('tags.tag,child.*')
            ->where($where)
            ->order($sort, $order)
            ->paginate($limit);
        foreach ($list->items() as $row){
            $tag = Db::table('page_tags tags')->where('id', $row['tagsid'])->field('tag')->find();
            $row['tagsid'] = $tag['tag'];
        }
        $result = ['total' => $list->total(), 'rows' => $list->items()];
        return json($result);
    }

忽略keyValue,直接修改数据源。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值