Symfony 1.4 нумерация страниц с фильтрацией не работает - PullRequest
2 голосов
/ 14 декабря 2011

У меня есть проект Symfony 1.4 с простыми модулями CRUD.Для пары модулей мне нужна возможность фильтровать результаты на странице индекса в одном или нескольких полях.Я следовал описанному методу здесь для фильтрации и нумерации страниц.По сути, значения, введенные через фильтры, ограничивают запрос, данный объекту пейджера.Это похоже на работу, но только для первой страницы.Если я пытаюсь перейти на любые последующие страницы, он показывает мне строки из нефильтрованного списка.

Ссылки внизу каждой страницы кодируются как:

link_to($page, 'appliance/index?page='.$page, 'class ="pager"')

Я предполагал, что запрос, используемый пейджером, останется прежним, но, похоже, что выбор другой страницы изобъект пейджера сбрасывает его с запросом по умолчанию.

Любые идеи относительно того, как исправить это, будут высоко оценены.

1 Ответ

1 голос
/ 15 декабря 2011
  1. получить примененные фильтры с помощью $sf_request->getParameter('your_filter_array'); или использовать объект формы getValues() метод
  2. объединить массив с compact('page')
  3. сгенерировать из него строку запроса сhttp_build_query()
  4. добавить его к вашей ссылке.
...