Ich habe ein Formular erstellt
<%= form_for [current_user,@product,@bid] do |f| %>
<p><%= f.number_field :bid_amount %></p>
<p><%= f.number_field :product_id %>
<p><%= f.submit 'Bid!' %></p>
<% end %>
Im Feld: product_id möchte ich standardmäßig @ product.id hinzufügen, wie kann ich das implementieren? Bitte . Vielen Dank im Voraus. :)
<p><%= f.number_field :product_id, :value => @product.id %></p>
weitere Details zu: NumberField
Gerade:
<p><%= f.number_field :product_id, :value => @product.id %></p>
Ich gehe davon aus, dass das Gebot zum Produkt gehört. Deshalb sollte product_id für den Benutzer überhaupt nicht in Form sein. Als ID-Nummer ist sie bedeutungslos und muss für alle Gebote auf das richtige Produkt festgelegt werden.
Die Aktion im Formular bedeutet automatisch, dass sie in der Datenbank korrekt festgelegt wird.
Fügen Sie einfach @ product.id zu Ihrem Feld hinzu.
In diesem Beispiel <% = f.number_field: product_id, @ product.id%>
user740584 ist richtig, der Benutzer sollte die product_id nicht bearbeiten können.
Wenn Sie es wirklich in Ihrem Formular benötigen, können Sie ein
<%= f.hidden_field :product_id %>