每个控制器的Rails布局

我有一个家庭控制器和一个新闻控制器。 我希望这两个控制器都使用application.html.erb布局文件,除此之外,对于家庭,使用家庭布局和新闻,使用新闻布局。 然后呈现特定视图。 在轨道中这可能吗?

换句话说,我不希望为每个视图指定一个布局,但是每个控制器都要从application.html.erb布局inheritance。

我想要做的是删除添加顶部导航栏的冗余,并在每个布局文件中包含javascript / css。 我宁愿将其包含在一个文件中,并使用另一个布局执行控制器特定布局,然后最终渲染视图。

谢谢

我想你想要的是一个嵌套的布局。 我不会在这里重复所有内容,而是将您引导至http://guides.rubyonrails.org/layouts_and_rendering.html#using-nested-layouts

您可以告诉控制器使用特定的布局,例如

class HomeController < ApplicationController layout 'home' end class NewsController < ApplicationController layout 'news' end 

这些将期望app / views / layouts / home.html.erb等中的布局

 class ProductsController < ApplicationController layout "inventory" #... end 

http://guides.rubyonrails.org/layouts_and_rendering.html