【发布时间】:2014-09-07 10:30:35
【问题描述】:
在开发我的 Symfony2 应用程序时,我想像在 Ruby on Rails 中一样,在所有控制器中提供可用的方法。在 RoR 控制器中,只需在 ApplicationController 之后继承,这就是您放置所有方法的地方。但是什么是 Symfony 方式,这里有什么好的做法?
我想要的功能其实很简单,类似这样:
public function showAction()
{
$user = $this->container->get('security.context')->getToken()->getUser();
}
我可以在此处加载当前用户,并且我希望在每次操作之前终止此功能,当然,无需将代码复制到每个控制器中。
【问题讨论】:
-
请注意标准的 Symfony 2 基本控制器类已经有一个 getUser() 方法。值得看一下源代码,看看它能做什么。