Active Record Association Type Mismatch
Habe ich verschachtelte Ergebnisse auf Spiele wie dieses
/Spiele/16/Ergebnisse/13/Bearbeiten
Dort habe ich die folgende select-Feld dieses zeigt den korrekten Informationen (- team.name und team.id)
<%= f.collection_select :winner, @select_winner_loser, :id, :name %>
Wenn ich jetzt versuche zu Bearbeiten mein Ergebnis und die Auswahl eines Gewinners ich dieses:
ActiveRecord::AssociationTypeMismatch Team(#10504340) erwartet, bekam String(#6163240)
"Ausgelöst, wenn ein Objekt zugewiesen, einem Verein, der hat einen falschen Typ." http://api.rubyonrails.org/classes/ActiveRecord/AssociationTypeMismatch.html
Gewinner team Objekt, Ergebnis.rb sieht wie folgt aus
class Result < ActiveRecord::Base
has_one :match
belongs_to :winner, class_name: "Team"
belongs_to :loser, class_name: "Team"
end
@select_winner_loser kommt aus meiner results_controller
def edit
@select_winner_loser = []
@select_winner_loser << @match.top
@select_winner_loser << @match.bottom
end
Übereinstimmen.oben & unten ist auch team-Objekten
class Match < ActiveRecord::Base
belongs_to :top, class_name: "Team"
belongs_to :bottom, class_name: "Team"
...
belongs_to :result
end
Ich sehe nicht ein, warum ich, seit ich die richtigen Objekte in meinem select-Feld, irgendwelche Ideen?
Dank
InformationsquelleAutor Pierre | 2014-09-18
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ändern
zu
und Ihre jeweiligen Parameter entsprechend angepasst werden. Rails erstellt eine
Team
Objekt, wenn es sieht das_id
im Namen.InformationsquelleAutor lunr