Плагин поиска cakedc использует pb

Я использую плагин cakedc search, но есть одна вещь, которую я не могу найти, у меня есть форма с двумя полями, и я бы добавил, например, «онлайн = 1» к моему поиску в моем контроллере, я пытаюсь:

    public function find() {
 $this->Prg->commonProcess();
 $array = array('type'=>'post', 'online'=>'1', 'created'=> '<= NOW()');
 $this->passedArgs = Set::merge($this->passedArgs, $array);

    $this->paginate = array(
      'conditions' => array($this->Post->parseCriteria($this->passedArgs)),
     );
    $this->set('posts', $this->paginate());

модель:

    public $displayField = array('name', 'category_id');

    public $filterArgs = array(
                array('name' => 'name', 'type' => 'query', 'method' => 'filterName'),
                array('name' => 'category_id', 'type' => 'value')
           );
.....

отладка($this->passedArgs):

array(
    'name' => 'mon',
    'category_id' => '2',
    'type' => 'post',
    'online' => '1',
    'created' => '<= NOW()'
)

но аргумент $array не учитывается в моем поиске. Может ли кто-нибудь помочь? Я новичок в cakephp, большое спасибо!


person pjfnew    schedule 02.10.2012    source источник
comment
См. chetan4cake.blogspot.in/2012/ 06/   -  person chetanspeed511987    schedule 03.10.2012


Ответы (1)


Вместо

'conditions' => array($this->Post->parseCriteria($this->passedArgs)),

пытаться

'conditions' => $this->Post->parseCriteria($this->passedArgs),

Я также рекомендую вам использовать DebugKit и добавить сгенерированный запрос к вашему вопросу, если он все еще не работает.

person floriank    schedule 02.10.2012