我正在使用Grails中一些已经创建的(不是我自己的)域类制作脚本。
class Person extends OAP {
static hasMany = [addresses: Address]
(...)
}
class Address {
static belongsTo = [oap: OAP]
(...)
}
OAP类没有引用地址。
所以我试图做:
p.save()
a.oap = p
println a.oap
a.save()
其中p为Person而a为Address,但尽管它在控制台上输出了正确的person,但该引用并未保存在地址表中(oap_id保持为空)
P.S .:这可能不是建立最佳关系的最佳方式,但这是我必须与之合作的地方
最佳答案
尝试p.addToAddresses(a)
,然后尝试p.save()
。它应该同时保存p
和a
。
参见http://grails.org/doc/latest/guide/5.%20Object%20Relational%20Mapping%20%28GORM%29.html#5.2.4%20Sets,%20Lists%20and%20Maps