Php 如何将过滤器和快速搜索添加到ATK$CRUD

Php 如何将过滤器和快速搜索添加到ATK$CRUD,php,frameworks,crud,atk4,Php,Frameworks,Crud,Atk4,我有一个ATK4页面,看起来像这样 <?php class page_backlog extends Page { function init() { parent::init(); $p = $this; $logged_in_users_team = $p->api->getTeamID(); $s = $p->add('Model_BacklogStory'); $

我有一个ATK4页面,看起来像这样

<?php

class page_backlog extends Page
{

    function init()
    {
        parent::init();
        $p = $this;

        $logged_in_users_team = $p->api->getTeamID();
        $s = $p->add('Model_BacklogStory');
        $s->addCondition('team_id', $logged_in_users_team);
        $s->addCondition('side_task', 0);

        $crud = $p->add('CRUD');
        $c = $crud->setModel($s, null, array('description', 'backlog_ref', 'points', 'priority_no'));

        if ($c->grid) {
            $c->grid->last_column = 'points';
            $c->grid->getColumn('points')->makeSortable();
            $c->grid->addQuickSearch(array('description', 'backlog_ref'));
        }
    }

}
是的

这使得$c成为一个模型,从这一行进一步来看,$c不引用crud。 因此,使用
if($crud->grid)
或添加行
$c=$crud

是的

$c=$crud->setModel($s, null, array('description', 'backlog_ref', 'points','priority_no'));
这使得$c成为一个模型,从这一行进一步来看,$c不引用crud。
因此,使用
if($crud->grid)
或添加行
$c=$crud

实际上$c是一个控制器,但由于它是透明的,所以可以将其用作模型。使用if($crud->grid)会出现另一个错误“尝试获取不存在字段的值:q”这表明它没有看到由模型生成的查询-我尝试过在将其更改为使用$c(后者显示网格)之前使用$c-只是没有快速搜索或排序链接-我还仔细检查了模型中列出的所有四列,因此有没有其他想法如何使其工作?发现后一个错误似乎与4.1中存在一个问题,但更改为使用$crud与$c的效果不同。请尝试切换到devel branch。实际上$c是一个控制器,但由于它是透明的,因此可以用作模型。使用if($crud->grid)会出现另一个错误“尝试获取不存在字段的值:q”这表明它没有看到由模型生成的查询-我尝试过在将其更改为使用$c(后者显示网格)之前使用$c-只是没有快速搜索或排序链接-我还仔细检查了模型中列出的所有四列,因此有没有其他想法如何使其工作?发现后一个错误似乎与4.1中存在一个问题,但更改为使用$crud确实会产生与$c不同的效果。请尝试切换到devel branch