我有一个项目模型
class Item < ActiveRecord::Base
belongs_to :user
has_many :bids
accepts_nested_attributes_for :bids
end
也是一个投标模型
class Bid < ActiveRecord::Base
belongs_to :user
belongs_to :item
end
我正在尝试对某个项目出价并让出价属于某个项目。
这是我的项目视图,我正在尝试使用嵌套表单:
<%= form_for @item do |i| %>
<h2>Place a bid</h2>
<%= i.fields_for :bid do |bid| %>
<%=bid.label :amount %>
<%=bid.text_field :amount %>
<% end %>
<div class="form-actions">
<%= i.button :submit, class: 'btn btn-primary' %>
</div>
<% end %>
但它没有在数据库中创建出价。
这是项目控制器中允许的参数:
params[:item].permit(:user_id, :title, :bids_attributes => [:amount, :user_id, :item_id])
还有我的路线:
item_bids_path GET /items/:item_id/bids(.:format) bids#index
POST /items/:item_id/bids(.:format) bids#create
new_item_bid_path GET /items/:item_id/bids/new(.:format) bids#new
edit_item_bid_path GET /items/:item_id/bids/:id/edit(.:format) bids#edit
item_bid_path GET /items/:item_id/bids/:id(.:format) bids#show
PATCH /items/:item_id/bids/:id(.:format) bids#update
PUT /items/:item_id/bids/:id(.:format) bids#update
DELETE /items/:item_id/bids/:id(.:format) bids#destroy
我错过了什么??
编辑(忘记添加我的架构):
create_table "bids", force: true do |t|
t.datetime "created_at"
t.datetime "updated_at"
t.integer "item_id"
t.integer "user_id"
end