我创建了一个表格
<%= 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 %>
在 :product_id 字段中我想默认添加@product.id,如何实现?
我创建了一个表格
<%= 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 %>
在 :product_id 字段中我想默认添加@product.id,如何实现?
<p><%= f.number_field :product_id, :value => @product.id %></p>
有关以下内容的更多详细信息: NumberField
只是:
<p><%= f.number_field :product_id, :value => @product.id %></p>
我假设出价属于产品。因此 product_id 根本不应该在表单上供用户查看。作为一个 ID 号,它没有意义,必须为所有投标设置正确的产品。
表单上的操作将自动意味着它已在数据库中正确设置。
user740584 是对的,用户应该不能编辑product_id。
如果您确实需要在表单上使用它,您可以使用
<%= f.hidden_field :product_id %>
只需将@product.id 添加到您的字段。
在这个例子中 <%= f.number_field :product_id, @product.id %>