私はここで解決策を探し求めてきましたが、本当に必要なものが見つかりません。それは私が正しいものを探していないということかもしれません。
私のアプリの管理者バックエンドの場合、現在、次のようなコントローラーのユーザーを取得しています。
//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で自分自身をフェッチしないフロントエンドの場合、これは機能しません。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();
...
}
しかし、これは私には、Symfony2の基準をはるかに下回っているように見えます。もっとエレガントなものを見落としているに違いない。そこに何か洞察はありますか?