我们在列表页面中使用 CakePHP 的默认搜索行为,一旦我选择了一些搜索条件,它就可以正常工作。
现在,每当我翻到第 7 页时。 2 有了搜索条件,搜索参数不随Paging传递,就变成正常列表了。
有人对搜索和分页组合有一些想法吗,使用 CakePHP 1.2 默认搜索插件。
看看这个教程。这看起来有点像我过去做过的事情。
如果您使用会话,则搜索条件可以存储在会话中。 您只需要确保用户也可以轻松重置存储的搜索条件。
$this->paginate = array(
'conditions' => array('Model.name LIKE' => '%'.$storedInTheSession.'%'),
'order' => array('Model.name ASC'),
);
假设您的表单是使用 'type'=>'get' 创建的
echo $form->create('Content', array('action' => '/index', 'class' => 'forms','type'=>'get'));
你可以这样做:
if(isset($_GET['some_criteria'])){ //if some of you fields is set
unset($_GET['url']); //this is set by CakePHP and we don't need it
$paginator->options = array('url'=> array('controller' => 'content', 'action' => 'index', '?' => http_build_query($_GET)));
}
虽然它可能适合您的需求,但我警告您,这可能不是 CakePHPiest 的方式