我当前的Rails项目要求主页有一个与页面其余部分视图不同的标题。唯一的区别是应用它的风格(更大的徽标,更大的搜索栏......)。我有一个有效的解决方案,但感觉有点“脏”,我想知道是否有更优雅的方式来设计特定页面。
到目前为止,我在应用程序的布局上执行此操作:
body class="#{controller_name} #{action_name}"
所以我可以在mi css上做到这一点:
#headerWrapper {
font-size: 1.5em;
...
}
...
.catalog.index {
#headerWrapper {
font-size: 2em;
...
}
}
但每当我在这里对基本样式进行更改时,索引页面的布局可能会受到影响,我不得不“撤消”我所做的任何更改(即如果我更改字体大小,我必须适应相应的.catalog.index部分)。
对于处理此问题的最优雅方式的任何想法将非常感激。
感谢。
答案 0 :(得分:0)
只需为主页创建第二个布局页面,该页面引用您想要的特定外观和css类,然后指示控制器和特定操作呈现新布局,即:
class PostsController < ApplicationController
layout 'signin', :only => [:show]
......
end
此处提供更多信息:http://guides.rubyonrails.org/layouts_and_rendering.html(我建议的具体内容是从2.2.12.1开始)