原则 2 查找 By* 返回对象



是否可以更改findBy*方法以返回带有实体而不是数组的对象(我的自定义)?

使用 findOneBy

而不是 findBy。 findOneBy 作为对象返回。

http://www.doctrine-project.org/api/orm/2.2/class-Doctrine.ORM.EntityRepository.html

$obj = $this
    ->getDoctrine()
    ->getRepository("VendorXXXBundle:EntityName")
    ->findOneBy(array $criteria)

实体存储库中编写自定义函数可能更好。

这是我肮脏的、低技术含量的方法。

您的发现者*在这里:

$entities = $em->getRepository($entclass)->findBy($entFilter, array('id' => 'DESC'));  

我的单行转换在这里:

$entitiesCollection= new DoctrineCommonCollectionsArrayCollection($entities);

然后我确认我可以使用那些方便的 ArrayCollection 方法,如 last()、count()、contains() 等。

var_dump($entitiesCollection->count(), $entitiesCollection); print strftime('%c') . __FILE__ . __LINE__ . __FUNCTION__; die;  

相关内容

  • 没有找到相关文章

最新更新