0

私はレールに不慣れで、複数のモデル ツリー階層にブレッドクラムを効率的に表示する方法がよくわかりません。私のアプリ ツリーは 7 モデル/レベルの深さですが、3 で説明します。

class One
 has_many :twos

class Two
 belongs_to :one
 has_many :threes

class Three
 belongs_to :two

たとえば、ショー 3 ビュー (2 と 1 の親インスタンスにリンク) にブレッドクラムが必要だとします。現在、コントローラーで AR 関連付けを使用しています。

add breadcrumb @three.two
add breadcrumb @three.two.one

これは、2 つの追加の SQL クエリが実行されることを除けば (2 つと 1 つの祖先を取得するために) 正常に機能します。

ブレッドクラムをより効率的にするにはどうすればよいですか?

[残念ながら、Ancestry gem は 1 つのモデルでしか機能しないようですが、パンくずリストをコラムに連載するというアイデアは追求する価値がありますか? これは非常に基本的な要件であるため、無知からこれを複雑にしすぎているのではないかと思います。]

4

0 に答える 0