我在Symfony 3.x应用程序中使用Doctrine Filters。
现在,我需要过滤连接表,但addFilterConstraint方法总是接收继承根:
在连接或单表继承的情况下,总是传递继承根的ClassMetadata。这对于避免在应用过滤器时会破坏SQL的边缘情况是必要的。
这是我班级的一部分:
<?php
namespace AppBundle\Filter;
use Doctrine\ORM\Mapping\ClassMetaData;
use Doctrine\ORM\Query\Filter\SQLFilter;
class DataAbstractionFilter extends SQLFilter
{
public function addFilterConstraint(ClassMetadata $targetEntity, $targetTableAlias)
例如,如果我有类:
class SomeClass {/**/}
class SomeChildClass1 extends SomeClass {/**/}
class SomeChildClass2 extends SomeClass {/**/}
addFilterConstraints总是会收到 SomeClass 。
有什么建议吗?提前谢谢。