это меня беспокоило,
Допустим, у меня есть две модели, категории и продукта
class Category {
static hasMany = [products : Product]
String name
}
..
class Product {
String name
}
Теперь я хочу удалить товар, который существует во многих категориях. я придумал эти строки в моем продукте до удаления методов
def beforeDelete = {
Category.list()?.each{
it.removeFromProducts(this)
}
}
Теперь это может работать, но, как я понимаю, это большой запрос для одной простой задачи. я знаю, что могу получить тот же результат только с одной строкой строки SQL ("удалить из категории_продукта, где product_id =?"). но мне просто любопытно, есть ли более изощренный способ добиться этого в Grails? (кроме выполнения строки sql)