2012-06-04 75 views
0

我一直在尋找解決方案的高低,但我並沒有真正找到需要的東西。這可能只是因爲我沒有尋找正確的東西。如何在沒有請求參數的情況下處理Symfony 2路由

我的應用程序的管理後臺,我目前吸引用戶像這樣的控制器:

//routing.yml 
view_user: 
    pattern: /user/{id}/ 
    defaults: { _controller: AppBundle:User:view } 

//UserController.php 
use Sauce\AppBundle\Entity\User; 

public function viewAction(User $user) 
{ 
    $user->getSauce(); 
} 

針對前端在用戶不使用的ID在每個網址提取自己,這並未沒有工作。有沒有可能做到這一點,沒有在URL中的ID?我如何使用戶容易獲得的第一個想法是一樣的東西:

/** 
* A fast way to grab the user throughout this class. 
*/ 
public function getUser() { 
    return $this->get('security.context')->getToken()->getUser(); 
} 

public function viewAction() 
{ 
    $user = $this->getUser(); 

    ... 
} 

但這對我來說,似乎下面的Symfony 2標準的方式。我必須俯視更優雅的東西。那裏有任何見解?

回答

0

是的,創建一個輔助方法是要走的路。您可以將其移動到基本控制器以保持乾燥。我的abstract base controller提供了這種方法。

沒有「魔術」的方式做到這一點我知道。

相關問題