上下文:我正在使用mongodb插件,虽然这可能与此无关。
假设我有两个域类,Foo和Bar,其中Foo hasMany Bar and Bar belongsTo Foo:
class Foo {
static hasMany = [bar:Bar]
}
class Bar {
static belongsTo = [foo:Foo]
}
我希望存储的内容将是Foo的集合(或表),Bar的集合,以及处理映射的FooBar集合。相反,我得到了一个Foo集合和一个Bar集合,其中Bar有一个“foo”键。似乎正在发生的只是添加belongsTo但省略hasMany的预期结果...
A)我的期望是不正确的,预期的结果是什么? B)如果不是A,我需要做些什么来使它符合我的期望吗?
思想?
答案 0 :(得分:3)
我们知道mongodb是非关系数据库,这就是为什么正在发生的事情是正确的,它没有创建第三个表或集合进行处理有很多,但是当你使用mongodb插件时,你可以查询它就像有很多/ belongsTo,因为你通常使用mysql。在你的情况下,foo的db结构将是:
{ "_id" : NumberLong(1), "version" : 0 }
并且对于Bar将是:
{ "_id" : NumberLong(1), "foo" : NumberLong(1), "version" : 0 }
它将为您提供,因为它是从父级到子级的级联删除,就像使用mysql一样
希望它有助于:)