跟进我的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'));?>
我相信我应该收到所有提交的数据,而不仅仅是标准的价值。我不知道出了什么问题,坦率地说,这需要花费很多时间才能完成。我似乎无法弄清楚如何使用这个插件。只有我吗 ?如果有人能找到时间帮忙,我将不胜感激!
答案 0 :(得分:0)
答案几乎落在我的鼻子底下......我不经意地两次命名“查询”输入,
<?php echo $this->Form->input('query', array( 'id' => 'query', 'name' => 'query','label' => false, 'placeholder' => 'Search')); ?>
我删除了'name'键,一切正常!这是一个愚蠢的错误,对我来说浪费了大约一个小时,所以我希望这会有助于遇到这样的事情的人!感谢