我想添加一个用于使用CakeDC搜索插件进行搜索的选择框。 IE:
<select name="field">
<option value="email">Search By Email</option>
<option value="first_name">Search By First Name</option>
</select>
目前我在VIEW中的内容是:
echo $this->Form->create('User', array(
'url' => array_merge(array('action' => 'index'), $this->params['pass'])
));
echo $this->Form->input('email', array('div' => false, 'empty' => true));
echo $this->Form->input('first_name', array('div' => false, 'empty' => true));
这种方式很好用,但我想避免使用多个输入框并使用选择框简化它。我可以努力(从选择框中获取值并将其与输入框中的值组合),但必须有另一种方法来实现它...
这是我的用户模块:
public $filterArgs = array(
'email' => array('type' => 'like'),
'first_name' => array('type' => 'like')
);
这是我的控制器:
public function index() {
$this->Prg->commonProcess();
$this->paginate['conditions'] = $this->User->parseCriteria($this->passedArgs);
$this->set('users', $this->paginate());
}
答案 0 :(得分:0)
我认为你在寻找
echo $this->Form->input('search', array('div' => false, 'empty' => true));
和
public $filterArgs = array(
'search' => array('type' => 'like', 'field'=>array('email', 'first_name')),
);
和
public $presetVars = true;
但是你会失去两个输入的“AND”而支持OR(这个功能不那么强大)。 如果那对你好,那就是这样。