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

Schreibe einen Kommentar