cakePHP - cakeDc-search插件 - PRG模式

时间:2014-02-10 19:27:34

标签: php cakephp query-string params cakedc

跟进我的previous question,我应该将提交的帖子数据作为查询字符串传递,如下所示:

 echo $this->Form->create('Donor',array(
        'url' => array_merge(array('action' =>'find'), $this->params['pass'])
  ));

但是当我在控制器的find操作中尝试以下操作时:

 $this->Paginator->settings['conditions'] = $this->Donor->parseCriteria($this->Prg->parsedParams());

$this->Prg->parsedParams()仅包含以下标准:

这是var_dump

array (size=1)
  'criteria' => string 'blood_group_id' (length=14)

这是我的观看代码:

            <?php
                echo $this->Form->create('Donor',array(
                    'url' => array_merge(array('action' =>'find'), $this->params['pass'])
                ));
                echo $this->Form->input('criteria',array(
                        'label'=>'Search Criteria',
                        'options' => array(
                            'id'=> 'By ID',
                            'name' => 'By Name',
                            'blood_group_id' => 'By Blood Type',
                            'type' => 'By Donor Type',
                            'age' => 'By Age',
                            'gender' => 'By Gender' 
                        )
                    ));
             ?>

                <?php echo $this->Form->input('query', array( 'id' => 'query', 'name' => 'query', 'label' => false, 'placeholder' => 'Search')); ?>
                <?php echo $this->Form->end(__('Search'));?>

我相信我应该收到所有提交的数据,而不仅仅是标准的价值。我不知道出了什么问题,坦率地说,这需要花费很多时间才能完成。我似乎无法弄清楚如何使用这个插件。只有我吗 ?如果有人能找到时间帮忙,我将不胜感激!

1 个答案:

答案 0 :(得分:0)

答案几乎落在我的鼻子底下......我不经意地两次命名“查询”输入,

<?php echo $this->Form->input('query', array( 'id' => 'query', 'name' => 'query','label' => false, 'placeholder' => 'Search')); ?>

我删除了'name'键,一切正常!这是一个愚蠢的错误,对我来说浪费了大约一个小时,所以我希望这会有助于遇到这样的事情的人!感谢