我正在使用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()。它应该同时保存pa
参见http://grails.org/doc/latest/guide/5.%20Object%20Relational%20Mapping%20%28GORM%29.html#5.2.4%20Sets,%20Lists%20and%20Maps

10-06 10:08