Le problème, bien sûr, est que les symboles rubis n'aiment pas les traits d'union. Donc, quelque chose comme ça ne fonctionnera évidemment pas:
content_tag(:div, "Some Text", :id => "foo", :data-data_attr => some_variable)
Une option consiste à utiliser une chaîne plutôt qu'un symbole:
content_tag(:div, "Some Text", :id => "foo", 'data-data_attr' => some_variable)
Ou je pourrais simplement interpoler:
"<div id='foo' data-data_attr='#{some_variable}'>Some Text</div>".html_safe
Je préfère le plus tard mais les deux semblent un peu dégoûtants. Quelqu'un connaît-il un meilleur moyen?