[英]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.