как я могу вернуться на страницу с такими же поисковыми фильтрами

0

В cakephp я могу добавить фильтры поиска и изменить post vars на Get, как показано ниже. Это прекрасно работает. Моя проблема в том, как перейти на другую страницу, найденную в списке поисков, и вернуться на ту же страницу? Все фильтры поиска исчезают, когда я возвращаюсь, поскольку я их не храню.

например, я ищу счет-фактуру 2 и получаю список запросов. я нажимаю на ссылку из поиска и просматриваю страницу. Затем я хочу вернуться на ту же страницу с тем же номером страницы для счета-фактуры 2?

if (($this-> request-> is ('post') || $this-> request-> is ('put')) && isset ($this-> request-> data ['filter'])) {

       $filter_url['controller'] = $this->request->params['controller'];
       $filter_url['action'] = $this->request->params['action'];
       $filter_url['page'] = 1;

// for each filter we will add a GET parameter for the generated url
foreach($this->data['Filter'] as $name => $value){
   if($value){
       $filter_url[$name] = urlencode($value);
   }
}   
//Post params are now GET paramaters
return $this->redirect($filter_url);    
   }//isset   
Теги:
cakephp

1 ответ

0

Варианты один: используйте ссылку/кнопку с javascript window.history.back()

Варианты два: используйте Controller::referer() в вашем представлении, например

echo $this->Html->link('Back', Controller::referer());

но это только позволяет вам сделать один шаг назад.

  • 0
    он возвращает вас на страницу с поисковыми фильтрами?
  • 0
    это не сработало: Strict (2048): Нестатический метод Controller :: referer () не должен вызываться статически,
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню