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)
        }
    }
}

Abstract ドメインで namedquery を呼び出そうとすると、クロージャー ブロックがオーバーライドされているために失敗します。

Person.isActive.age18 は、isActive が存在しないために失敗します。

抽象ドメイン クラスで名前付きクエリを再利用できますか?

4

1 に答える 1

5

これを試して

class Person extends AbstractDomain {
    String name
    Integer age

    static namedQueries = {
        age18 {
            eq("age", 18)
            }
        } << AbstractDomain.namedQueries
    }
于 2012-10-16T09:27:29.660 に答える