0

ユーザーが注文を保存したかどうかに応じて、ビューの背景を変更しようとしています。そのため、ユーザーが注文を保存している場合はメニュー項目が強調表示され、保存していない場合は強調表示されません。

1 つの解決策は、2 つのパーシャルを作成し、ユーザー アクションに基づいてそれぞれを条件付きでレンダリングすることです。

しかし、部分全体を再レンダリングするのはやり過ぎのようで、一般的に悪いフォームです。背景色を変更する最良の方法は何ですか?

4

2 に答える 2

1

これには 2 つのレイアウトは必要ありません。保存が成功したら、メニュー項目に .highlight クラスを配置し、.highlight クラスの css で必要なことを行います。

于 2013-01-13T19:36:02.323 に答える
0

コントローラーで if を使用 render :layout => 'special_layout' し、 if ブランチに応じてレイアウトを変更するために使用します。

これを見てください

于 2013-01-13T19:03:26.457 に答える