43

我创建了一个表格

<%= 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,如何实现?

4

5 回答 5

77
 <p><%= f.number_field :product_id, :value => @product.id %></p>

有关以下内容的更多详细信息: NumberField

于 2013-09-04T07:51:36.737 回答
6

只是:

<p><%= f.number_field :product_id, :value => @product.id %></p> 
于 2013-09-04T07:51:01.437 回答
3

我假设出价属于产品。因此 product_id 根本不应该在表单上供用户查看。作为一个 ID 号,它没有意义,必须为所有投标设置正确的产品。

表单上的操作将自动意味着它已在数据库中正确设置。

于 2013-09-04T08:17:11.343 回答
1

user740584 是对的,用户应该不能编辑product_id。

如果您确实需要在表单上使用它,您可以使用

<%= f.hidden_field :product_id %>
于 2015-03-03T01:09:27.610 回答
-2

只需将@product.id 添加到您的字段。

在这个例子中 <%= f.number_field :product_id, @product.id %>

于 2013-09-04T07:49:08.503 回答