Ich versuche, mit der number_field-Methode einen Dezimalwert (USD, also 12,24 wäre ein Beispiel) zu akzeptieren.
<div class="controls">
<%= f.number_field :amount, :class => 'text_field' %>
</div>
Dadurch kann ich nur ganzzahlige Werte eingeben.
ruby-on-rails
Adrian Elder
quelle
quelle
:step => 0.01
wenn Sie Zahlen mit 2 Dezimalstellen wollen0.33
in ein eingebennumber_field_tag :amount
, erhalten Sieparams[:amount]
gleich0.33
Für Preisfelder können Sie Folgendes verwenden:
f.number_field :price, value: @item.price ? '%.2f' % @item.price : nil, min: 0, step: 0.01
Es funktioniert auch dann gut, wenn Sie leere Werte zulassen.
quelle