在 Rails 中使用 HAML 而不是 ERB 时 CSS 未加载 (404)
Posted
技术标签:
【中文标题】在 Rails 中使用 HAML 而不是 ERB 时 CSS 未加载 (404)【英文标题】:CSS not loading (404) when using HAML instead of ERB in Rails 【发布时间】:2013-06-20 08:40:22 【问题描述】:此 ERB 有效(查找 CSS):
<%= stylesheet_link_tag "main" %>
但是我正在将我的 ERB 转换为 HAML,现在我的样式表找不到了。我可以轻松地向config/routes.rb
添加一些内容,但我想我不需要?
这是我的 HAML:
%link:rel => "stylesheet", :type => "text/css", :href => "main"
在 ERB 中没有像 stylesheet_link_tag
这样的东西吗? HAML 目前看起来比 ERB 更糟糕。使用 HAML 渲染的 CSS 如下所示:
<link href="main" rel="stylesheet" type="text/css">
这样你就可以看到为什么它找不到文件了。
我的 CSS 文件是这样的:app/assets/stylesheets/main.css
我应该使用stylesheet_link_tag
之类的东西还是我必须改变我的路线之类的?
非常感谢。
【问题讨论】:
【参考方案1】:stylesheet_link_tag
只是一个简单的助手
为了在haml中使用它,只需做这样的事情
= stylesheet_link_tag "main"
【讨论】:
【参考方案2】:你必须改变它:
%link:rel => "stylesheet", :type => "text/css", :href => "main"
到:
%linkrel => "stylesheet", :type => "text/css", :href => "main"
您不必将:
添加到rel =>
【讨论】:
为什么投反对票?如果这不能解决问题,无论如何都要更改它,因为:
是错误的。以上是关于在 Rails 中使用 HAML 而不是 ERB 时 CSS 未加载 (404)的主要内容,如果未能解决你的问题,请参考以下文章
从 ruby on rails 中删除 new.haml/new.erb?