【发布时间】:2012-02-12 12:18:31
【问题描述】:
我遇到了这个问题我有一个在所有存储库中都重复的方法,例如这个方法。
function getAllOrderedBy($column) {
$qb = $this->createQueryBuilder('ac')
->select('ac')
->orderBy('ac.' . $column);
return $qb->getQuery()->getResult();
}
我想将它提取到另一个超类中,例如 OrderedRepository,并将其用作所有其他存储库的基类。
现在的问题是如何做到这一点?
我尝试在 OrderedRepository 的构造函数中实例化 EntityRepository, 像这样的东西,还在那里实例化了其他东西所需的所有内部对象,但它并没有真正起作用,我觉得这是错误的道路。
function __construct() {
parent::__construct();
$this->blabla_option = "instantiated";
}
您能否举一个正确扩展 EntityRepository 的示例,以便这个扩展类可以用作其他存储库的基类?
附:我是 PHP 初学者,如果我的不知情伤害了您的感受,请原谅。
【问题讨论】:
标签: php oop symfony doctrine-orm