我有一個簡單的Grails應用程序。我有域如下Grails域名字符串查詢查詢
class Author implements Serializable {
....
static hasMany = [
book : Book
]
}
class Book implements Serializable{
Author author
Genres genres
static belongsTo = [author: Author , genre: Genres ]
static mapping = {
.....
author lazy: false
}
}
class Genres implements Serializable{
String title
}
現在我有一個要求,在那裏我有流派標題的列表,我需要檢索所有誰擁有這些類型之一ATLEAST一種書的作者。我需要在Author類中編寫一個命名查詢。我想下面的查詢
hasGenre {cl ->
'book.genre.title' in cl
}
我傳遞字符串列表如下
Author.hasGenre(genereTitleStringArray)
但這似乎並不奏效。我有一些其他簡單的命名查詢工作正常。所以當我檢索包括「hasGenere」時,這似乎不會影響檢索。我究竟做錯了什麼?我是很新的這方面提前
本書通過懶惰單端關聯與Generes關聯。這是因爲我不想在檢索Genere對象時檢索書籍。我正在使用Grails 2.2.4。如果我使用查詢'Author.hasGenre(genereTitleStringArray).list()',則檢索所有記錄。 hasGenre方法似乎不會影響檢索 – Visahan
我剛剛意識到我已在作者中將定義的標籤定義爲'Set book',將其更改爲'Set book'並且它正在工作。感謝您的幫助 –
Visahan
很高興聽到,祝你好運兄弟) –