我有域类=>多对多并使用addTo关联它们。
class Books {
static belongsTo = Author
}
class Author {
static belongsTo = Book
static hasMany = [books: Book]
}
控制器:
author.addToBooks(mybook).save()
=>我想检查mybook是否已添加到作者。是一种检查书籍是否已添加到作者(希望不使用findBy)的方法吗?像
这样的东西if (author.isAdded(mybook))
感谢。
答案 0 :(得分:6)
默认情况下,定义为hasMany
将使用java.util.Set
。由于Set是一个不包含重复项的集合,这意味着您可以使用相同的Book调用author.addToBooks()
,并且不会多次添加它 - 因此不必检查是否存在书籍。 / p>
但是,要检查集中的图书,您可以使用author.books.contains(book)