我已经在我的记录中添加了分页,并且在我的记录列表中也有搜索过滤器。但问题是当我在第一页并搜索它时它工作得很好,但是当我从其他页面搜索时(2 ,3,4 等),它会获取结果,但正如我在第 2 页中一样,它不会在我的列表视图中显示结果。我发现的问题是 url 在搜索时没有改变。
例如:我在这个页面 url -> http://test.com/album/contact-list/2中 ,现在我从这个页面进行搜索,url 似乎是一样的。
这是分页代码 //Pagination
$page = $this->params()->fromRoute('page', 1);
$paginator = new \Application\Library\Ex\Paginator();
$paginator->setPageUrl("/album/contact-list");
$paginator->setCurrentPage($page);
$paginator->setRows(5);
最后返回视图模型
$viewModel = new ViewModel();
$viewModel->setVariable('data', $data);
$viewModel->setVariable('status', $status);
$viewModel->setVariable('published_filter', $contact->published_filter);
$viewModel->setVariable('paginator', $paginator);
return $viewModel;
并在 module.config
'contactList' => array(
'type' => 'Segment',
'options' => array(
'route' => '/contact-list[/:page]',
'constraints' => array(
'page' => '[0-9]*',
),
'defaults' => array(
'controller' => 'Contact',
'action' => 'contactList',
'page'=>1
),
),
),