2011-02-26 55 views
4
=image_tag('/images/public_stream_page/overlay_image.png', 
:onload=>"document.getElementById('dd_mid_right_box_public').style.background='url(#{stream.asset.url(:normal)})';") 

這是我HAML代碼來顯示圖像
所以正在此錯誤該行比上一行縮進2級。 HAML

The line was indented 2 levels deeper than the previous line. 

如何解決呢?

回答

1

對於與空間縮進有關的問題,您不會以正確的方式顯示代碼... 行號還有幫助。 你應該有這樣的事情:

- if stream.asset? 
    =image_tag('/images/public_stream_page/overlay_image.png',:onload=>"document.getElementById('dd_mid_right_box_public').style.background='url(#{stream.asset.url(:normal)})';") 

與相同數量的間隔的你在templeate的其餘部分使用縮進第二行,而或許你有一個線(錯誤號未顯示)2時間更縮進。

+0

OOH與空間有關。今天只有我開始HAML。所以你說空間縮進是HAML中的問題,而不是ERB中的問題......對吧? – shajin 2011-02-26 17:45:59

+0

無論如何,這解決了我的問題:D – shajin 2011-02-26 17:46:24

+0

在haml空間事宜,並小心使用標籤以及(除非你只使用這些),我不能有一天沒有看到這個錯誤:( – ecoologic 2011-02-26 17:55:14

5

可能不是OP的問題的直接答案,但我遇到了這個錯誤,因爲我的HAML的前幾行只縮進了一個空格,然後它碰到了一個使用兩個空格縮進的文檔部分。顯然,HAML處理器使用第一對幾行來確定縮進中有多少個空格,然後貫穿始終。

+0

這只是保存了我的時間 – beydogan 2015-05-09 20:13:00