2011-06-23 3 views
0

RubyとRailsの新機能で、私はこれを私のタイトルで説明する方法がわからないので、ここでやります。私の目標は、多くのプロダクトを作成することです。Railsでこのモデルの関係を設定する

私はProduct MVCを持っていると、フォームの迅速な醜いスケッチは、このようなものになるだろう:

全体の場所

form_for @product 

<p> 
<%= f.label :location %>:<br> 
<%= f.text_field :location %> 
</p> 

製品1

<p> 
<%= f.label :name %>:<br> 
<%= f.text_field :name %> 
<%= f.label :price %>:<br> 
<%= f.text_field :price %> 
</p> 

製品2(s AME)

<p> 
<%= f.label :name %>:<br> 
<%= f.text_field :name %> 
<%= f.label :price %>:<br> 
<%= f.text_field :price %> 
</p> 

製品三(同)

、ユーザーがフォーム上の3つの製品を作成するときに、この関係はそれほど場所を取ることができ、彼は一つだけを持ってそれを設定する方法を
<p> 
<%= f.label :name %>:<br> 
<%= f.text_field :name %> 
<%= f.label :price %>:<br> 
<%= f.text_field :price %> 
</p> 

<%= f.submit %> 
<% end %> 

3人全員のための場所?あなたはその後、ネストされたリソースのルートを設定したい

class Location < AR::Base 
    has_many :products 
end 

class Product < AR::Base 
    belongs_to :location 
end 

答えて

2

この方法

resources :locations do 
    resources :products 
end 

そして、あなたは場所を追加しているとき、あなたはfields_forでそれに製品を追加することができます。

+0

フォームは代わりにform_for @locationですか?あるいは、私はそれを@productにして、そのモデルとルートを持つことができますか? – LearningRoR

+0

form_for @location、fields_for:products –

+0

ありがとう、これは将来のために設定するのに最適な方法でした。 – LearningRoR

0

このシナリオでは、nested_attributes_forを使用する必要があります。

+0

私の製品に1つの場所があることを達成するためにあなたが信じる最良の方法は何ですか? – LearningRoR

関連する問題