【发布时间】:2012-02-21 18:37:07
【问题描述】:
我有 2 个对象,ObjectA 和 ObjectB。
当ObjectA 被创建时,ObjectB 还不存在(并且不能,因为还没有数据)。
一旦ObjectB 被创建,它需要有一个对应的ObjectA 附加到它上面如果存在一个合适的。如果没有合适的ObjectA,那么新的ObjectB 根本就没有连接到一个。
因此,所有ObjectA 实例最终都将附加到ObjectB,但并非所有ObjectB 实例都将具有ObjectA。
本质上,我正在寻找 GORM 来构建这样的数据库表:
ObjectA
- Id (NotNull, unique)
- ObjectB_Id[FK: ObjectB.Id] (unique)
ObjectB
- Id (NotNull, unique)
我怎样才能把 GORM 域类放在一起来做到这一点?
我几乎尝试了hasOne、belongsTo、原始属性、nullable: true 和unique: true 约束的所有组合,但我必须缺少一个。这似乎不是一个特别奇怪的场景,所以必须有一些方法来完成这个。
【问题讨论】:
标签: grails grails-orm one-to-one grails-domain-class