在最新的Symfony 2版本中(使用FOSUserBundle和SonataUserBundle),我試圖獲取當前用戶以便在我的新實體中預填表單控制器。getUser()返回null,我的symfony控制器中沒有啓動會話
在mycontroller.yml:
my_controller_new:
pattern: /new
defaults: { _controller: "MySiteBundle:MyController:new" }
在MyController.php:
public function newAction()
{
$user = $this->getUser();
// ...
}
但是當我打電話$this->getUser()
,該方法返回null
。即使我在我登錄(我可以訪問/profile
和更新,沒有任何問題我的用戶信息)
我又試圖檢查在會話開始:
public function newAction()
{
var_dump($this->get('session')->isStarted());
// ...
}
返回FALSE。這裏有什麼問題?
$ this-> get('session') - > isStarted()返回false表示您的會話未啓動。 – 2014-11-03 10:50:37
是的,我在標題中提到它,但我想知道爲什麼。 – SylvainB 2014-11-03 10:52:41
,我發佈了答案,請檢查它是否有助於解決您的問題! – 2014-11-03 10:57:17