私はSlimを[〜#〜] haml [〜#〜]個人プロジェクトでは、HAMLほど優雅にHTML5データ属性を処理するようには見えません。誰かがこれに出くわしたり、ドキュメントでまだ見つけていないオプション/構文について知っているかもしれないと期待していました。
HAMLでは、次のようにネストされたハッシュを使用するだけで HTML 5データ属性 を定義できます。
%a{data: {key1: 'val', key2: 'val'}}
その結果
<a data-key1='val' data-key2='val'></a>
Slimには複数の方法があります
ハッシュとして
ハッシュが指定された場合にハイフネーションされる属性(例:data = {a:1、b:2}はdata-a = "1" data-b = "2"としてレンダリングされます)
「muが短すぎます」と述べたように、直観的に使用してください。
a data-title="help" data-content="foo"
Rubyコードを使用します。私はこれを頻繁に行い、めったに上記を行いません。
= link_to 'foo', bar_path, data: {a: 'a', b: 'b'}
splat演算子を使用します。
h1#section-title*{'data-url'=>'test', 'data-id'=>'test'} = @project.name
.your-class*{data: {first_attribute: 'first value', second_attribute: 'second value'} }
生産します
<div class="your-class" data-first_attribute="first value" data-second_attribute="second value"></div>
私はこの種の修正を好む...
@products.each do |product|
.module data-id=product.id
それは私のために働いています