思いつきで、ビュー内の現在の controller#action をチェックして、フラッシュ メッセージを移動する必要があるかどうかを確認できます。
Rails はこれらのパラメーターをすべてのビューに渡します (例: のshowアクションを実行中の場合UsersController):
params[:controller] #=> users
params[:action] #=> show
ビューの条件を単純化するヘルパーを追加できます。
# file: app/helpers/application_helper.rb
def move_flash_messages?
params[:controller] == "users" && params[:action] == "show"
end
次に、レイアウトで次の簡単なチェックを行います。
# file: app/views/layouts/application.html.haml
- unless move_flash_messages?
= flash_messages
...
- if move_flash_messages?
= flash_messages