3

私は小さな Rails3:MongoDB:Mongoid プロジェクトから始めていますが、自然はより建築的であるといういくつかの質問に出くわしました。

ネストされたリソースをいつ使用し、ネストする深さは?

私はネストされたルートの友人ではありませんが、2 つ以上のリソースがスタックされていない場合は便利です。また、MongoDB のようなドキュメント指向データベースは、ドキュメント自体がネストされているため、ネストの完全なターゲットのようです。

したがって、私の最初の質問は次のとおりでした: references_many <=> referenced_in 関連付けの場合、ネストされたルートを使用する必要がありますか

私が試してみたところ、ActiveRecord の「ビルド」が存在しないため、コントローラー全体が、まったくネストせずに、すべてを手動で行うことなく、より見栄えのするものに分解されました。

私が間違っている?そのような関連付けのルートもネストする必要がありますか?

その後、私は最初の埋め込みドキュメントにたどり着き、自問自答しました。いくつかの反復の後、2 つのドキュメントではなく 4 つのドキュメントになり、すべてが他のドキュメントの 1 つに埋め込まれました。そのため、ルートをネストすると、私があまり好きではない URL につながりました。

したがって、すでに MongoDB の経験があるユーザーへの質問は次のとおりです。入れ子にする必要がありますか? はいの場合、どのような状況で、どのくらいの深さですか?

Jさんはじめまして。

4

1 に答える 1

1

同様の一連の質問がありました。この投稿の後、Ryan Bates が Mongoid に関する優れた Railscast を作成しました。関連付けと、embedded_* イディオムと references_* イディオムをいつ使用するかを説明するセクションがあります。両方の例があります。Railscast をチェックする機会があったことを願っています。そうでない場合は、関連する ASCIIcast へのリンクを次に示します。

http://asciicasts.com/episodes/238-mongoid

Mongoid または ActiveRecord に関するリソースのネストについて私が読んだことはすべて、1 レベル以下の深さのネストのベスト プラクティスを示しています。

http://weblog.jamisbuck.org/2007/2/5/nesting-resources

于 2011-02-10T22:46:41.973 に答える