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?
ruby-on-rails
html
Cory Schires
quelle
quelle
Haben Sie versucht, Anführungszeichen mit Symbol zu verwenden? Etwas wie:
quelle
:
?Ein Helfer ist keine schlechte Idee, scheint aber ein bisschen übertrieben für das zu sein, was mich an Syntax im Grunde verwirrt. Ich nehme an, es ist nichts in Schienen eingebaut, was ich mir erhofft hatte. Ich werde nur das verwenden:
quelle
JQuery Air (codeschool.com) Level 1, Beispiel 1
Codeschool / plattformunabhängige Version
Schienenversion
quelle
Aufbauend auf früheren Antworten ist hier der kanonische Weg, dies jetzt zu tun:
Was erzeugt:
quelle
Sie können jederzeit eine eigene Hilfsfunktion erstellen, um dann schreiben zu können
quelle