2013-12-15 3 views
0

Я хочу создать приложение на symfony 2.3. На главной странице я хочу отобразить некоторые материалы из базы данных. Теперь, если пользователь не аутентифицирован и авторизован, я хочу только дать им результаты, которые имеют ROLE_ANONYMOUS в качестве атрибута. Если пользователь является, например, администратором, я даю им строки с ROLE_ANONYMOUS и ROLE_ADMIN. Чтобы проверить роль предоставляется ли я использовать код прутSymfony 2 регулирует доступ к строкам базы данных

{% if is_granted(metaforum.requiredRole) %} 
... 
{% endif %} 

Теперь, если я даю себе роль администратора, я получаю все (как предполагалось). Но если я выйду и получаю анонимную роль, я ничего не получаю. Даже после изменения требуемой роли в базе данных на пустую строку это не сработает. Панель инструментов разработчика говорит Roles: {}, когда анонимно. Есть ли способ анонимные пользователи ROLE_ANONYMOUS? Если нет, как я могу заставить это работать?

+0

Итак, вы получаете все строки из базы данных, а затем фильтруете его с помощью Twig? Я предлагаю вам получить только релевантные данные в контроллере, а не на ваш взгляд. –

ответ

0

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

Смежные вопросы