2009-12-05 128 views
0

我有3種型號:用戶,銷售商和汽車鏈接模型Ruby on Rails的

我希望用戶能夠選擇從賣方市場了一輛汽車,這被添加到用戶的購物清單。

我有我的車控制器是這樣的:添加

@user = User.find(params[:user]) 
    @seller = Seller.find(params[:seller]) 

    @car = @user.cars.build(params[:car]) 

但賣方心不是。我怎麼能這樣做?

順便說一句我有這樣的:

class Car < ActiveRecord::Base 
    belongs_to :user 
    belongs_to :seller 
end 

在我的模型汽車

+0

你問45個問題,但接受了僅4回答您可能會發現越來越多的人願意幫助,如果你接受的答案。 – 2009-12-05 21:45:41

回答

2

地址:

@car.seller = @seller你建立後車。然後@car.save

生成不知道@seller,你需要告訴汽車它有一個賣家。它只知道有一個用戶,因爲你是從用戶創建汽車的。

你也可以這樣做:

@car = Car.new 
@car.seller = @seller 
@car.user = @user 
+0

非常感謝! – Lilz 2009-12-05 22:38:05

0
@car.seller = @seller 
1

如果你確保你的形式產生PARAMS領域[:汽車]包括賣家的ID的字段,你不需要改變你的控制器。

如:

<% fields_for :car, @seller.cars.build do |car_form| %> 
<%= car_form.hidden_field :seller_id 
... more fields for car form ... 

<% end %>