Symfony:登录后所有其他页面重定向


Symfony: after login and all other pages redirect

登录后,我希望用户重定向到类似轮询的页面,这样,如果他/她没有进行轮询,他/她就不能进行或转到其他菜单
该轮询来自数据库,该数据库取决于时间范围
如果我让每个控制器都检查用户是否进行了轮询并重定向到一个页面,这不是很有效吗
如果我把它放在登录控制器之后,用户可以点击菜单或指向其他路由来通过轮询。

更简单的解决方案是在成功登录后将用户重定向到特定操作。此操作将根据您想要设置的任何条件,将用户返回到主页面或轮询页面。因此,此操作可以被视为用户在系统中的入口点。接下来,使用kernel.controller事件调度器,针对每个请求检查此操作。

您需要实现kernel.controller侦听器来检查每个请求的某些条件。这将是正确的方式。你只需要在一个地方定义它。

您可以在官方文档中了解这种方法:http://symfony.com/doc/current/cookbook/event_dispatcher/before_after_filters.html