내 프로젝트 (user_role, grades, user_role_grades)에 많은 관계가 있습니다. 그러나 나는 또한 db에서 데이터를 삭제하지 않아도됩니다. 그래서, 나는 많은 관계를 생성하기 위해 2 개의 테이블을 연결하는 테이블에 상태 열을 추가했습니다. 지금 원한다면많은 관계에서 doctrine sql 필터 적용
$userRole->getGrades()
단일 테이블 (user_role_grades)의 상태가 "0"이 아닌 레코드 만 가져 오기. 들어, 나는 교리 sql 필터를 사용하려고합니다.
namespace Bis\MpBundle\Filter;
use \Doctrine\ORM\Mapping\ClassMetaData;
class UserRoleGradeFilter extends \Doctrine\ORM\Query\Filter\SQLFilter
{
public function addFilterConstraint(ClassMetadata $targetEntity, $targetTableAlias)
{
if("Bis\DefaultBundle\Entity\UserRoleGrade" == $targetEntity->name){
return $targetTableAlias . '.status != 0';
}
return '';
}
}
그래서, 그것은 비스 \ DefaultBundle \ 법인 \ UserRole에 대한,하지만 비스에 대한 \ DefaultBundle \ 엔티티 \ UserRoleGrade의 실체라고합니다. 누구에게 어떤 아이디어가 있습니까?
다른 아이디어가 있습니까? 어떻게 할 수 있습니까?
처럼 문에 붕괴 것? 나는 비슷한 일을하려고 노력 중이며 해결책을 제시하지도 않았다. –