Бих искал да създам асоциация "един към много", която не извършва каскадни изтривания. Четене на справочникът на Grails казва
Каскадното поведение по подразбиране е каскадно записване и актуализиране, но не и изтриване, освен ако не е посочено и принадлежност към
Това не е поведението, което виждам. Със следните реализации на класове получавам каскадни актуализации, записвания, и изтривания без принадлежност към:
class A {
static hasMany = [bees: B]
}
class B { }
В една сесия на Hibernate правя следното, за да проверя, че каскадните актуализации работят:
def a = new A()
a.save()
def b1 = new B()
a.addToBees(b1)
def b2 = new B()
a.addToBees(b2)
След това, в друга сесия на Hibernate, следният код изтрива всички екземпляри на A и B:
A.list().each { a -> a.delete() }
Това бъг ли е? Грешна ли е документацията? Правя ли нещо неправилно? Използвам конзолата на Grails, за да проверя това поведение.