¿Cuál es la mejor práctica para agregar otra instancia de niño en griales?
Si tengo estos dominios
class Parent {
String name
static hasMany = [children: Child]
}
class Child {
String name
static belongsTo = [parent: Parent]
}
¿Obtengo manualmente el ID del padre y lo guardo en la instancia secundaria si quiero crear un nuevo hijo?
Respuestas
1 para la respuesta № 1Prueba esto:
Parent parent = Parent.get(parentId)
Child child = new Child(
parent: parent,
name: "name"
)
child.save()
parent.addToChildren(child)
parent.save()
o...
Parent parent = Parent.get(parentId)
Child child = new Child()
child.name = "name"
child.parent = parent
child.save()
parent.addToChildren(child)
parent.save()
0 para la respuesta № 2
El código de rcgeorge es válido pero no es necesario que guarde al niño antes de usar el método addTo, ya que se guardará en cascada. Así que ...
Parent parent = Parent.get(parentId)
Child child = new Child(
parent: parent,
name: "name"
)
parent.addToChildren(child)
parent.save()