[英]Symfony2 Accessing User Entity Custom repository from Security Token
我有一个User
实体类,该类用于身份验证提供程序:
/**
* @ORM\Entity(repositoryClass="Aurora\LikeBundle\Entity\UserRepository")
*/
class User implements AdvancedUserInterface
{
...
}
在UserRepository
我有一个自定义方法getServices()
。 在我的控制器中,我可以通过调用$this->container->get('security.context')->getToken()->getUser()
来访问当前用户-但它仅返回用户对象(带有setter和getters)没有存储库方法。
如何从安全上下文访问这些内容?
储存库与任何特定的Entity对象都不相关。 它与整个Entity类有关。 因此,您具有User实体的UserRepository,但$ user对象的UserRepository没有多大意义。
如果要获取某个实体(例如,用户实体)的存储库,则可以这样做:
$repository = $this->getDoctrine()->getRepository('AuroraLikeBundle:User');
并使用它:
$repository->getServices(); // or
$repository->getServices($userId);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.