レイアウトが機能しない理由をよりよく説明できますか? このコードで問題が解決すると思います。
UsersController
new と create を除くすべてのアクションで同じビューを使用するとします。次に、簡単に行うことができます:
def UsersController < ApplicationController
layout "shared_layout", except: [:new, :create]
layout "new_user_layout", only: [:new, :create]
def show
# Renders in app/views/layouts/shared_layout.html.erb
end
def index
# Renders in app/views/layouts/shared_layout.html.erb
end
def new
# Renders in app/views/layouts/new_user_layout.html.erb
end
def create
# Renders in app/views/layouts/new_user_layout.html.erb
end
end
次に、共有でレンダリングする必要があるものを示すレイアウトを作成できます。のapp/views/layouts/shared_layout.html.erb
<html>
<body>
<%= render "shared/shared_partial_1.html.erb" %>
<%= render "shared/shared_partial_2.html.erb" %>
<%= render "shared/shared_partial_3.html.erb" %>
<%= yield %>
</body>
</html>
これにより、コントローラーのすべてのアクションに対して同じ方法でパーシャル 1、2、および 3 がレンダリングされます。それの何が問題なのですか?