2012-09-17 20 views
14

Bir DATA- ile bir bağlantı oluşturmayı biliyorum veri-xxx-yyy oluşturun * nitelik:HAML: nitelik

%a{ :href => "#", :data => { :name ="John", :age => 24 } } Hi John 

oluşturur:

<a href="#" data-name="John" data-age="24">Hi John</a> 

Ama nasıl bir 2 derin veri ismi hakkında data-user-name ve data-user-age gibi, veri niteliklerini gruplamanın bir yolu. Tahmin edebileceğiniz gibi, denedim:

<a href="#" data-user="nameJohnage24">Hi John</a> 

Bir fikrin nasıl yaptığını: bana garip HTML çıktısını veren çalışmıyor

:data => { :user => { :name => "John", :age => 24 } } 

Ama? Şimdiden teşekkürler.

cevap

22

Sen data nitelik özel kasalı haml gereğidir ve sadece sığ değerlerle hesapları

:data => {'user-name' => 'John', 'user-age' => 24} 

kullanmak gerekecek.

+0

için, 'kullanıcı' biz 'veri' gruplandırılmış yolu grubuna mümkün değildir? – htaidirt

+0

Hayır, çünkü 'data' özniteliği HAML tarafından özel olarak kaplıdır ve yalnızca sığ değerler için geçerlidir. Bu konuda bir tartışma başlatmak için https://github.com/haml/haml adresinden bir sorun açabilirsiniz. Bakmadım ama daha önce bahsedilmiş olsaydım şaşırmazdım. –

+2

Teşekkürler Casey, sorun github'da açıldı https://github.com/haml/haml/issues/593 – htaidirt

-2

Evet, yapabilirsin! Basit itibaren ...

%a(data-user-name="John", data-user-last-name="Arbuckle") 

Yani karmaşık

%a(data-user-name="#{User.first.name}", data-stack-overflow="all of these will be custom attributes in your link"){href: "garfield.com"}