我知道我可以使用layout调用render方法:’my_layout’来改变控制器方法中的布局.但是,我的一些控制器方法具有以下内容,因此我也可以轻松地呈现
JSON:
respond_to do |format| format.html format.json { render json: @cars } end
如何更改format.html的布局?我应该使用渲染布局替换format.html:’my_layout’?我可以将一个选项传递给format.html吗?
解决方法
默认情况下,Rails将使用app / views / layouts / application.html.erb作为布局.如果您想使用其他布局,请创建app / views / layouts / my-new-layout.html.erb
在您的控制器方法中:
respond_to do |format| format.html { render layout: 'my-new-layout' } format.json { render json: @cars } end
以下是Rails指南中的相关部分:Layouts and Rendering: Options for Render