Doctrine直接获取一个不在数组中的对象

bod*_*ser 1 repository symfony doctrine-orm

我有以下存储库:

    public function findClassPhotoByPath($path)
{
    return $this->getEntityManager()
        ->createQuery('SELECT p FROM KSRGalleryBundle:Photo p WHERE p.category = :category AND p.path = :path')
        ->setParameters(array('category' => 'class_photo', 'path' => $path))
        ->setMaxResults(1)
        ->getResult();
}
Run Code Online (Sandbox Code Playgroud)

当我现在使用这个存储库方法时,对象在数组中,我必须通过$ photo [0]访问它.

是否有可能通过findOneBy()直接获取直接的情况?

最诚挚的问候,博多

Mun*_*Das 7

你可以用getSingleResult().另请在此处查看其他选项.

编辑:

如果你不想抓住NoResultException你也可以使用getOneOrNullResult()方法.

  • @Cerad,对.使用`getOneOrNullResult()`方法可以避免这种情况. (2认同)