4

私はレシピ用のレールアプリを作成しようとしていますが、ビューフォームとコントローラロジックの作成方法は混乱しています。私は、2つのモデル、レシピやアイテムを持って次のようにIngredientモデルとhas_many :through関連して参加しました:複雑なビューフォームとhas_many:throughアソシエーション

class Recipe < ActiveRecord::Base 
    has_many :ingredients 
    has_many :items, :through => :ingredients 
end 

class Item < ActiveRecord::Base 
    has_many :ingredients 
    has_many :recipes, :through => :ingredients 
end 

class Ingredient < ActiveRecord::Base 
    # Has extra attribute :quantity 
    belongs_to :recipe 
    belongs_to :item 
end 

この協会は、コンソールで動作します。たとえば:

Recipe.create(:name => 'Quick Salmon') 
Item.create(:name => 'salmon', :unit => 'cups') 
Ingredient.create(:recipe_id => 1, :item_id => 1, :quantity => 3) 

Recipe.first.ingredients 
=> [#<Ingredient id: 1, recipe_id: 1, item_id: 1, quantity: 3] 

Recipe.first.items 
=> [#<Item id: 1, name: "salmon", unit: "cups"] 

しかし、私は、私は1つのページ内のレシピに直接成分を追加できるように、新しいレシピのビューを作成する方法を理解していません。 fields_forまたはネストされた属性を使用する必要がありますか?ビューフォームとコントローラロジックを作成して、1つのページに成分を含むレシピを作成するにはどうすればよいですか?

私はRailsの3.1.3によ。

答えて

関連する問題