我寫一個Rails的helper方法,將包裝HTML代碼添加到拍攝的內容塊,更換content_for方法,如如何在Ruby on Rails中編寫幫助程序來捕獲Haml塊?
- content_for :header do
//haml code
..would成爲
- content :header do
//haml code
爲了做到這一點,我使用Haml和Ruby塊。這是它看起來像
def content(name,&block)
content_for name do
capture_haml do
haml_tag "div",{:id=>name.to_s} do
haml_tag "div",{:id=>"#{name.to_s}_group"} do
block
end
end
end
end
end
但我不能得到這個工作。沒有錯誤消息。它根本不顯示塊!我不知道我做錯了什麼。我希望得到第二個意見。
這兩個實際上是行爲完全等同。 ('&block'版本可能稍微有點高性能,但是現在它們大致相同。)然而,@ nex3指出,OP並沒有調用yield,而只是簡單地返回'block'稱它。 – Peeja 2014-03-19 15:13:16