有没有方法在Doctrine like 休眠's findByExample
method?
thanks
您可以使用findBy
方法,该方法是继承的并且存在于所有存储库中。
Example:
$criteria = array('name' => 'someValue', 'status' => 'enabled');
$result = $em->getRepository('SomeEntity')->findBy($criteria);
您可以创建findByExample
方法在您的存储库之一中使用如下定义:
class MyRepository extends Doctrine\ORM\EntityRepository {
public function findByExample(MyEntity $entity) {
return $this->findBy($entity->toArray());
}
}
为了使其工作,您必须为实体创建自己的基类,实现toArray
method.
MyEntity
也可以是一个接口,您的特定实体必须实现该接口toArray
再次方法。
要使其在所有存储库中可用,请确保扩展基本存储库类 - 在本示例中,MyRepository
one.
P.S 我假设你正在谈论学说2.x
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)