我知道我可以使用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