【发布时间】:2015-12-22 09:55:29
【问题描述】:
我有 2 个域类:A 和 B,定义如下:
class A {
String data
static hasMany = [bs: B]
}
class B {
String data
static belongsTo = [a: A]
}
现在我们在表 B 中有字段 a_id。 问题是我已经有了 a_id,如何正确插入以 a_id 作为外键的新 B 记录?
目前我是这样做的:
B b = new B(
data: "data",
a: A.get(a_id)
)
b.save()
=> 为了能够插入 B 记录,我必须再做一个查询来获取整个 A 对象,这样浪费时间和内存,因为仅 a_id 就已经足够了。 p>
非常感谢。
【问题讨论】:
-
而不是 get 使用 load()。不要担心这里的内存,它不会花费你很多内存,如果它已经存在于一级缓存中,它会从缓存中获取对象。
标签: grails grails-orm grails-domain-class