0

アプリケーションにページ オブジェクトとさまざまなテンプレート オブジェクトがあります。ページには名前、説明の URL などがあり、それぞれにテンプレートとの関係があります。テンプレートには、さまざまな数のコンテンツ ボックスと、他のコントローラー (ブログ、ギャラリーなど) との関係があります。

ページをレンダリングしているときに、どのテンプレートがページに添付されているか、それに基づいて関連コンテンツが何であるかを理解できます。しかし、ネストされたアイテムをレンダリングする最善の方法が何であるかはわかりません。

テンプレート ビューを別のビュー内から何らかの方法でレンダリングするつもりですか? それとも、ビューを完全に書き直す必要がありますか? この場合、別のテンプレートごとに追加のテンプレート ビューを作成し、それをページ ビューにバンドルして、適切な場合にのみ含める必要がありますか?

これはギャラリーやブログでも同じですか?それらはすべてページにバンドルする必要がありますか? それとも、適切な場所から呼び出すことができますか?

ここでのベストプラクティスが何であるかはわかりません。グーグルで調べてもうまくいきませんでした。私が使用しているキーワードが正しくないのではないかと疑っています。または、これは文書化する価値のない一般的な知識です。

4

1 に答える 1

0

共有パーシャルを使用してビューをレンダリングできます。このガイドをご覧ください。

ビューでは、必要な条件に基づいてパーシャルをレンダリングできます。

例えば:

- if params[:page] == "my_page"
  = render "shared/my_page"

当然、必要なデータをコントローラーに設定する必要があります。この共有ロジックは に配置できますApplication Controller

于 2012-10-27T12:21:50.983 に答える