Проблема с удалением связанных объектов и сохранением этого изменения в базе данных.
Имеет Groovy объект parent , с которым связано множество child сущностей. Когда мы находим этот объект домена и устанавливаем для этого списка значение null, и вызываем parent .save (flush: true)
дочерние элементы остаются в базе данных. Ожидал бы, что они были удалены. Любые предложения будут великолепны.
class Parent {</p>
<p>static hasMany = [child:Child]
...
}
и ребенок:
class Child {</p>
<p>belongsTo = [Parent]
...
}
добавляем элемент и удаляем:
def child = new Child()</p>
<p>def parent = new Parent(child:child)</p>
<p>parent.save(flush:true)
def id = parent.id //from saved entity</p>
<p>/// in separate transaction</p>
<p>parent = Parent.get(id) //id from above
parent.child = null</p>
<p>parent.save(flush:true)</p>
<p>// check database - child reference still there - expect to have been deleted
Любые предложения о том, что мы сделали неправильно, будут оценены. используя grails 1.3.5 (последняя версия).