2010-06-04 22 views
6

O haml en :javascript filtrenin içinden, hiçbir Yakut koduna izin , hatta bir açıklama gibi görünüyor.Yakut/Erb ne tür HAML içeride izin verilir: javascript filtre?

Yani bu izin DEĞİLDİR.?

:javascript 
    - 1.upto(10) do |i| 

:javascript 
    -# just a comment not to show to public 

(birileri :javascript filtrenin içine böyle açıklama gizlemek için bir yol yok dedim doğrudur

mi ama izin verilen tek şey gibi görünüyor

:javascript 
    $('#aDiv').html('#{a_ruby_variable}'); 

sadece bu # {} bırakılmaktadır. Ruby olan başka bir şey izin verilir?

Ben diğer soru üzerine söylediği gibi

cevap

7

, filtreler (neredeyse) tamamen Haml ayrı ayrı tutulur. Bunun tek istisnası #{}: sadece statik metin dönüşümü filtreler için, Haml kullanışlı bir yol olarak bu ekler (yani, :ruby ve :erb dışındaki en filtrelerinin bu kadar, hiç Yakut çevre ile etkileşime girmez metindir) Ruby değeri ekleyerek.

Eğer metin ile daha karmaşık Yakut entegrasyonu arıyorsanız, filtreler gidilecek yer değil. Bunlar, diyelim ki, sizin şablonda JS koyarak kullanışlı değil be-tüm sonu tüm çözüm olması gerekiyordu ediyoruz.

+0

ilginç ... belki de bu hız içindir ...% script dosyası daha fazla Ruby içeri girmesine izin verir ... bir daha: Ruby içeride daha fazla Ruby ifadesine izin veren bir javascript_ruby filtresi olamaz mı? –

İlgili konular