Как мне разместить общее количество статей на каждой странице? - PullRequest
1 голос
/ 13 сентября 2011

Я только начал изучать Symfony 2, и у меня есть маленький вопрос

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

Так что мне нужен какой-то общий скрипт для инициализации основных переменных, таких как количество статей.

Как мне это сделать?

1 Ответ

7 голосов
/ 13 сентября 2011

Простой способ добиться этого - создать действие, которое извлекает и выводит общее количество статей.Затем вы можете выполнить это действие из других представлений (например: $view['actions']->render('ArticlesBundle:Articles:getCount')).Если вы хотите, чтобы это отображалось на каждой странице вашего сайта, я бы порекомендовал отображать его из вашего base.html.php представления (или base.html.twig в зависимости от того, какой движок шаблонирования вы используете).Я бы также рекомендовал как-то кешировать его, чтобы вы не постоянно обращались к базе данных за счетом, который может меняться не очень часто.

Подробнее см. В документах по Embedded Controllers .

Вы можете дополнительно расширить этот пример, чтобы определить другие «основные переменные», которые вы хотите использовать на своем сайте,Одна из идей состоит в том, чтобы определить объект службы, цель которого состоит в том, чтобы хранить эти переменные, а затем обращаться к его содержимому, когда это необходимо.

Кстати, название вашего вопроса не описывает вашу проблему, пожалуйста, подумайте над ее перефразировкой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...