2012-10-16 5 views
4

나는 명명 된 쿼리의 상속 가능성에 대해 질문이있다. 다음과 같이 추상 도메인 클래스에 명명 된 쿼리를 저장하고 싶습니다.추상 도메인 클래스와 명명 된 쿼리 상속?

abstract class AbstractDomain { 
    boolean state 

    static namedQueries = { 
     isActive{ 
      eq("state", true) 
     } 
    } 
} 

class Person extends AbstractDomain { 
    String name 
    Integer age 

    static namedQueries = { 
     age18 { 
      eq("age", 18) 
     } 
    } 
} 

요약 도메인에서 namedquery를 호출하려고하면 클로저 블록이 무시되어 실패합니다.

isActive가 없기 때문에 Person.isActive.age18이 실패합니다.

Abstract Domain 클래스에서 명명 된 쿼리를 재사용 할 수 있습니까?

답변

5

마법처럼이

class Person extends AbstractDomain { 
    String name 
    Integer age 

    static namedQueries = { 
     age18 { 
      eq("age", 18) 
      } 
     } << AbstractDomain.namedQueries 
    } 
+0

작품을보십시오! – Marco