Eine weitere Neuling Frage.has_many Build-Methode, Rails
Das Ziel: Jede Zutat kann null oder mehr Einheiten Conversions gebunden haben. Ich möchte einen Link zum Erstellen einer neuen Einheitenkonvertierung auf der Seite einfügen, die eine bestimmte Zutat enthält. Ich kann es nicht richtig zur Arbeit bringen.
Ingredient Modell:
class Ingredient < ActiveRecord::Base
belongs_to :unit
has_many :unit_conversion
end
Unit Conversion Model:
class UnitConversion < ActiveRecord::Base
belongs_to :Ingredient
end
Unit Conversion Controller (für neu)
def new
@ingredient = Ingredient.all
@unit_conversion = @ingredient.unit_conversions.build(params[:unit_conversion])
if @unit_conversion.save then
redirect_to ingredient_unit_conversion_url(@ingredient, @comment)
else
render :action => "new"
end
end
Relevante Routen:
map.resources :ingredients, :has_many => :unit_conversions
anzeigen Ingredient-Link:
<%= link_to 'Add Unit Conversion', new_ingredient_unit_conversion_path(@ingredient) %>
Dies ist der Fehler:
NoMethodError in Unit conversionsController#new
undefined method `unit_conversions' for #<Array:0x3fdf920>
RAILS_ROOT: C:/Users/joan/dh
Application Trace | Framework Trace | Full Trace
C:/Users/joan/dh/app/controllers/unit_conversions_controller.rb:14:in `new'
Hilfe! Ich bin total durcheinander.