gehört_zu durch Assoziationen

ei folgenden Assoziationen muss ich auf das @ verweisQuestion dass einChoice wird durch das @ angehänChoice model. Ich habe versucht, @ zu verwendbelongs_to :question, through: :answer, um diese Aktion auszuführen.

class User
  has_many :questions
  has_many :choices
end

class Question
  belongs_to :user
  has_many :answers
  has_one :choice, :through => :answer
end

class Answer
  belongs_to :question
end

class Choice
  belongs_to :user
  belongs_to :answer
  belongs_to :question, :through => :answer

  validates_uniqueness_of :answer_id, :scope => [ :question_id, :user_id ]
end

Ich bekomm

NameError nicht initialisierte KonstanteUser::Choice

wenn ich versuche zu tuncurrent_user.choices

Es funktioniert gut, wenn ich das @ nicht einbin

belongs_to :question, :through => :answer

Aber ich möchte das verwenden, weil ich in der Lage sein möchte, das @ zu tvalidates_uniqueness_of

Ich übersehen wahrscheinlich etwas Einfaches. Jede Hilfe wäre dankbar.

Antworten auf die Frage(14)

Ihre Antwort auf die Frage