2012-01-27 4 views
0

저는 Symfony2의 초보자이며 Doctrine right를 사용하는 데 문제가 있습니다. 나는 기존 데이터베이스에 대한 엔티티를 만들었고 Doctrine을 사용하여 findById, findByAuthor 등의 함수를 사용하여 데이터베이스 내에서 검색 할 수 있습니다. 다음 단계는 사용자가 여러 인수를 입력 할 수있는 HTML 양식을 만드는 것입니다. 저의 목표는 Doctrine이 적어도 하나의 인수 모두와 일치하는 모든 엔티티에 대해 데이터베이스를 검색한다는 것입니다. 데이터 형식이 지정된 엔티티를 사용하여이 작업을 수행 할 수 있기를 기대했지만 어떻게 작동하는지 모릅니다.Doctrine으로 몇 가지 인수를 검색하십시오.

바라건대 당신은 내가 무슨 뜻인지 이해하고 나를 도울 수 :

당신이 사용하여 사용자 정의 쿼리를 수행해야합니다

답변

0

접견. 주로 DQL을 통해 이루어집니다.

이 방법을 사용하지 않는 경우 쿼리를 입력하지 않은 경우 custom repository 클래스를 직접 만들어야합니다. 약간의 오버 헤드처럼 보입니다. 나는 대안을 찾기 위해 주위를 둘러 보았다. 그러나 결국, 그것은 아주 간단합니다.

엔티티 유형에 대한 저장소를 요청할 때 Doctrine은 클래스의 인스턴스를 제공하기 만하면 투명 해집니다.

0

간단한 조건의 경우 findBy 메서드를 사용할 수 있습니다. $em 더 복잡한 조건에 대한 엔티티 관리자

$em->getRepository('YourBundle:YourEntity')->findBy(array(
    'id' => $id, 
    'author' => $author)); 

더 많은 정보 with the Doctrine documentation

으로 , 당신은 사용해야합니다 DQL