使用symfony doctrine

时间:2017-03-08 15:36:53

标签: php symfony doctrine-orm doctrine

我正在尝试创建一个api,使用symfony2 doctrine从数据库中检索字段,但查询会一直返回未找到的结果。这是我的尝试

 /**
 * @Route("/get/{email}")
 */
 public function emailAction($email)
 {
   $singleresult = $this->getDoctrine()->getRepository('Api3Bundle:Influ')->find($email);
   if ($singleresult === null) {
   return new View("user not found", Response::HTTP_NOT_FOUND);
   }

请问如何修改上面的url,以便在调用uri端点时让它返回参数中的电子邮件。

1 个答案:

答案 0 :(得分:0)

如果您实体中有一个名为" Email"的字段,您可以使用findOneByEmail(),它是一个动态方法名称,可根据列值查找单个对象:

->getRepository('Api3Bundle:Influ')findOneByEmail($email);

您还可以使用findOneBy()方法根据多个条件轻松获取对象,例如,您想要检索电子邮件,但只要它是活动的,在这种情况下您可以传递和数组:

->getRepository('Api3Bundle:Influ')findOneBy(
        array('email' => $email, 'active' => 1)
);