簡體   English   中英

使用Rails 3和Haml 3,如何配置Haml?

[英]Using Rails 3 and Haml 3, how do I configure Haml?

我正在使用Rails 3.0.0.beta3和Haml 3.0.0.rc.2,我無法找到我需要為Haml放置配置行的地方(也不是新版本中的內容,就此而言) 。 使用Rails 2.3.5和Haml 2,我會這樣做

Haml::Template.options[:format] = :html5

在environment.rb中。 或者,在Sinatra,

set :haml, {:format => :html5}

在我的主文件中。 但是在Rails 3中,一切都被改變了,無論我把配置線放在哪里,我都會得到一個未定義的方法或未定義的對象錯誤。

創建文件:

#{Rails.root}/config/initializers/haml.rb

使用haml選項:

Haml::Template.options[:attr_wrapper] = '"'

根據Rails 3的延遲加載原理,Haml只在加載ActionView::Base時才初始化,這在解析配置文件時可能不會發生。 為了在加載Haml后運行代碼,您需要在ActiveSupport#on_load塊中運行它。 例如:

ActiveSupport.on_load(:action_vew) do
  Haml::Template.options[:format] = :html5
end

我正在考慮在加載完整的Haml系統之前使配置可訪問的方法,或者通過先前定義Haml::Template.options或添加一個特殊的config.haml哈希。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM