0
在我的控制器中,我的show
动作采用与我的application.html.erb
不同的布局(例如,foo.html.erb
)。 foo.html.erb
有风格直接加载在<head>
,例如:在布局之间切换需要刷新以查看更改
<!DOCTYPE html>
<html>
<head>
<title></title>
<style type="text/css">
{styles here}
</style>
</head>
<body>
<%= yield %>
</body>
</html>
这里是我如何解决布局的控制器代码:
class FoosController < ApplicationController
layout :resolve_layout
def show
end
private
def resolve_layout
case action_name
when 'show'
'foo'
else
'application'
end
end
end
的问题是,应用程序似乎缓存模板太重了,当我点击一个应该使用show
模板的视图时,我没有看到那些没有刷新的<head>
样式。
我是不是正确处理这一点,还是有这样做的更“轨道”?我真正想在这里完成的是让一个特定模板独有的样式只能使用该单个模板加载。我认为这可能是一个资产管道问题,但我不确定,因为我还是Rails的新手。
请告诉我你的控制器代码? – Ninigi
您究竟如何将样式加载到头部? 您是否尝试过在application.html头部使用<%= yield:head%>,并使用content_for:head [如此处所述](http://guides.rubyonrails.org/v2.3.11/layouts_and_rendering。 HTML#使用化内容的)? – Ninigi
我已经添加了控制器的相关代码。 @Chai - 我会在今天下午晚些时候读一读这本书。 –