[解決済み] Rails layouts per action?
2022-04-21 17:29:13
質問
一部のアクションで異なるレイアウトを使用しています(ほとんどのコントローラで新規アクションを使用しています)。
レイアウトを指定するのに最適な方法は何でしょうか?(同じコントローラで3つ以上の異なるレイアウトを使用しています。)
を使うのは好きではありません。
レンダー :レイアウト => '名前'
をするのが好きでした。
レイアウト 'name', :only => [:new].
しかし、それを使って2つ以上の異なるレイアウトを指定することはできないんだ。
例えば
同じコントローラで、異なるレイアウト名と異なるオプションで2回レイアウトを呼び出すと、最初のレイアウトは無視されます - これらのアクションは私が指定したレイアウトでは表示されません。
注:Rails 2を使用しています。
どのように解決するのですか?
レイアウトを設定するためのメソッドを使用することができます。
class MyController < ApplicationController
layout :resolve_layout
# ...
private
def resolve_layout
case action_name
when "new", "create"
"some_layout"
when "index"
"other_layout"
else
"application"
end
end
end
関連
-
[解決済み】取得中。「プロジェクトのクローンとマイグレート後に、「マイグレーションは保留中です。この問題を解決するには 'bin/rake db:migrate RAILS_ENV=development' を実行してください。
-
[解決済み】警告:定数 ::Fixnum は非推奨 新しいモデルを生成するとき
-
[解決済み】gemのインストールができない - gemネイティブ拡張の構築に失敗 - そのようなファイルをロードできない -- mkmf (LoadError)
-
[解決済み] Rubyの文字列から日付への変換
-
[解決済み] Ruby:Rubyの配列にinclude.の反対はある?
-
[解決済み] Ruby on Railsのマイグレーションでデータベースのカラムの名前を変更するにはどうすればよいですか?
-
[解決済み】Railsの認証トークンを理解する
-
[解決済み】Railsでフルカスタマイズされた検証エラーメッセージ
-
[解決済み】ビューで現在のコントローラの名前を取得することはできますか?
-
[解決済み】Rails: モデルがすでに存在するときに`rails generate scaffold`を実行するにはどうすればよいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Rails。Ruby on Railsの移行でデータベースカラムの名前を変更するにはどうすればよいですか?
-
[解決済み】bcrypt LoadError: Cannot load such file
-
[解決済み] nil:NilClass の未定義メソッド `each'... なぜでしょうか?
-
[解決済み] PG::ConnectionBad - サーバーに接続できませんでした。接続が拒否されました。
-
[解決済み] Rubyのクラスで未初期化の定数エラーが発生する
-
[解決済み] Rails ExecJS::ProgramError in Pages#home?
-
[解決済み] Ruby on Railsでsimple_formを使うさまざまな方法|何が違うの?
-
[解決済み] RubyとRailsの "Date.today "フォーマット
-
[解決済み] レイル 4 radio_button_tag default not selected
-
[解決済み] rails/rubyでgroup_byを使用する。