1

コンテキスト: mongodb プラグインを使用していますが、これはそれとは何の関係もないかもしれません。

Foo と Bar という 2 つのドメイン クラスがあり、Foo には Bar があり、Bar は 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 ではない場合、私の期待に沿うようにするために何か特別なことをする必要がありますか?

考え?

4

1 に答える 1

3

mongodb は非リレーショナル データベースであることがわかっているため、何が起こっているのかが正しいのです。処理用の 3 番目のテーブルまたはコレクションを作成しません。通常、mysql で使用します。あなたの場合、fooのdb構造は次のようになります。

{ "_id" : NumberLong(1), "version" : 0  }

バーの場合は次のようになります。

{ "_id" : NumberLong(1), "foo" : NumberLong(1), "version" : 0 }

そして、mysqlを使用する場合のように、親から子へのカスケード削除であるため、提供されます

それが役に立てば幸い:)

于 2013-10-18T19:48:30.167 に答える