1
我在Grails中沒有太多的expierence,所以也許我不明白hasMany和belongsTo GORM中的關係。如何更改GORM中的家長?
說,我有2個班Parent.groovy和Child.groovy
class Parent {
String name
List childen = new ArrayList()
static hasMany = [children: Child]
}
class Child {
String name
static belongsTo = [parent: Parent]
}
Person person1 = new Person(name: "Person1")
Child child1 = new Child(name: "child1")
Child child2 = new Child(name: "child2")
person1.addToChildren(child1).save(flush: true)
person1.addToChildren(child2).save(flush: true)
Person person2 = new Person(name: "Person2").save(flush: true)
現在我想改變一個孩子的父母
child1.parent = parent2 // no effect
child1.save(flush: true)
在控制器就可以
Child child1 = Child.get(1)
bindData(child1, [parent: [id: 2]])
child1.save(flush: true)
但現在有在movie1.children空,在DB我可以看到PARENT_ID變化爲2
注:在活動記錄(滑軌)很容易
child1.parent_id = 2
也許我並不需要如果我想改變父母,使用這種關係?
也許有另一種方法可以做到嗎?