Поиск принадлежащих членов отношения «многие ко многим»

С классами домена Book и Author следующим образом:

class Book { 
    static belongsTo = Author
    static hasMany = [authors:Author]
    String title
}

class Author {
   static hasMany = [books:Book]
   String name
}

Как мне найти книгу автора с названием «Grails»?

Я пробовал это, но это не сработало (подпись метода: org.hibernate.collection.PersistentSet.findByTitle() не применима для типов аргументов: (java.lang.String) значение: [Grails].

Author author = Author.get(1)
def book = author.books.findByTitle("Grails")

person byamabe    schedule 24.07.2009    source источник


Ответы (1)


Вы можете выполнить поиск по примеру следующим образом.

Author author = Author.get(1) def b = Book.find( new Book(title:'grails', author:author) )

см. эту ссылку, чтобы узнать, как выполнять запросы.

person Jared    schedule 24.07.2009
comment
Это то, что мне было нужно с небольшой поправкой. У меня есть экземпляр автора, поэтому код выглядит следующим образом: Author author = Author.get(1) def b = Book.find(new Book(title:'grails', author:author)) Спасибо! - person byamabe; 24.07.2009