如何从数据库Symfony2获取用户(谁是当前登录名)

时间:2015-08-18 16:59:41

标签: php symfony doctrine-orm

我需要显示当前用户使用doctrine和symfony2记录的点数。我有一个用户和一个表用user_id指向。 我只需要显示用户登录。使用此代码,我会显示表中的所有点。

这是我的控制器

public function indexAction()
{   
    $em = $this->getDoctrine()->getManager();

    $entities = $em->getRepository('AtividadeBundle:Points')->findAll();

    return array(
        'entities' => $entities,
    );

}

谢谢!

2 个答案:

答案 0 :(得分:1)

在控制器内

$id= $this->get('security.context')->getToken()->getUser()->getId();
$entities = $em->getRepository('AtividadeBundle:Points')->findBy(array('user'=>$id));

答案 1 :(得分:1)

$id= $this->getUser()->getId();//more simple and short way to get the current user
$entities = $em->getRepository('AtividadeBundle:Points')->findBy(array('user'=>$id));