Das Problem ist natürlich, dass Rubinsymbole keine Bindestriche mögen. So etwas funktioniert offensichtlich nicht:
content_tag(:div, "Some Text", :id => "foo", :data-data_attr => some_variable)
Eine Möglichkeit besteht darin, eine Zeichenfolge anstelle eines Symbols zu verwenden:
content_tag(:div, "Some Text", :id => "foo", 'data-data_attr' => some_variable)
Oder ich könnte einfach interpolieren:
"<div id='foo' data-data_attr='#{some_variable}'>Some Text</div>".html_safe
Ich bevorzuge das spätere, aber beide scheinen ein wenig eklig zu sein. Kennt jemand einen besseren Weg?