私はコンテンツのために通常通りビュー/レイアウト内にapplication.html.erbを持っています。<%= yield%>です。今、私は異なるページ(プロファイル、アカウント、通知など)の束を保持するユーザーアカウントの設定ページを書いています。一部であるすべてのコントローラについてネームスペース内のコントローラの3.1のテンプレート継承
コントローラ/ settings_controller.rb
class SettingsController < ApplicationController
end
コントローラ/設定/ account_settings_controller.rb
class Settings::AccountSettingsController < ApplicationController
end
コントローラ/設定/ profile_settings_controller.rb
class Settings::ProfileSettingsController < ApplicationController
end
私がしたい設定名前空間の "常にレンダリングする例えば
<markup>
<%= yield(:settings_content) %>
</markup>
ので、含まれている特定のビュー/設定/ master.html.erbでビュー」、ビューの設定/ profile_settings/edit.html.erbは
<% content_for(:settings_content) do %>
<markup>
</markup>
<% end %>
私はありません含まれていますどこから始めるのかおそらく私のコントローラーは次のように見えるはずです
class Settings::AccountSettingsController < SettingsController
end
ガイダンスは大歓迎です。
EDIT:
Rendered settings/account_settings/edit.html.erb within layouts/application (19.6ms)
settings_controllerで
Rendered settings/master.html.erb within layouts/application (19.6ms)
Rendered settings/account_settings/edit.html.erb within settings/master (19.6ms)
これは私が今使っているものです。問題は、設定/マスターにレイアウト/アプリケーションを継承させて、<%= yield %>が設定/マスターの内容を吐き出すようにすることです。私は現時点では非常に貧しい解決策を使用しているので、私自身の質問に答える代わりに、私はこれを解決する別の方法を待っています。 –