Динамическое добавление ролей пользователю

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

Есть ли способ динамически добавлять пользователю роль в зависимости от того, есть ли у него «активная» подписка? В рельсах я бы просто позволил модели определять, есть ли у нее необходимые права, но я знаю, что по дизайну объекты symfony2 не должны иметь доступ к Doctrine.

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

15
задан maiwald 2 September 2019 в 06:16
поделиться