link CSS 文件到 Haml 布局模板

link CSS file to Haml layout Template

我正在尝试 link css 文件到 haml 布局模板

我在 ApplicationHelper 中有方法生成正确的 html

module ApplicationHelper

  def styletag(sheet_name)
    "<link rel='stylesheet' href='/assets/stylesheets/#{sheet_name}.css'>"
  end

end

还有link布局模板

!!! 5
%html
  %head
    %title Rotten Potatoes!
    = stylesheet_link_tag 'application'
    = styletag 'default'
    = javascript_include_tag 'application'
    = csrf_meta_tags
  %body
    = yield

但似乎 haml 不认为它是标签,而是像文本一样显示。

您需要添加 html_safe。 Rails 默认情况下会转义文本中的 html,因此您需要告诉 rails 它不应该这样做。

查看 http://apidock.com/rails/ActionView/Helpers/AssetTagHelper/stylesheet_link_tag 并单击 "Show Source" 如果你把它改成这样:

def styletag(sheet_name)
    "<link rel='stylesheet' href='/assets/stylesheets/#{sheet_name}.css'>".html_safe
end

它应该适合你