Я постоянно пытался погуглить эту ошибку, но безрезультатно. У меня в настоящее время есть эти модели
приложение / модели / survey.rb
class Survey < ActiveRecord::Base
belongs_to :user
has_attached_file :original, :default_url => "/public/:class/:attachment/:basename.:extension"
has_many :sub_surveys, :dependent => :destroy
end
приложение / модели / sub_survey.rb
class SubSurvey < ActiveRecord::Base
belongs_to :survey
has_many :questions, :dependent => :destroy
end
приложение / модели / question.rb
class Question < ActiveRecord::Base
belongs_to :sub_survey
validates_presence_of :sub_survey
acts_as_list :scope => :sub_survey
#after_destroy :destroy_orphaned_choices
has_many :answers, :dependent => :destroy
has_many :choices, :dependent => :destroy
end
приложение / модели / choice.rb
class Choices < ActiveRecord::Base
belongs_to :question
validates_presence_of :question
end
приложение / модели / answer.rb
class Answer < ActiveRecord::Base
belongs_to :question
belongs_to :user
belongs_to :game
validates_uniqueness_of :question_id, :scope => [:user_id, :game_id]
end
Теперь, когда я пытаюсь уничтожить опрос, я получаю сообщение об ошибке
uninitialized constant Question::Choice
Это прослеживает через / vendor / rails / active * материал после опроса .destroy
Затем, когда я пытаюсь получить доступ к выбору из вопроса. При выборе появляется сообщение
undefined method `Choices' for #<Question:0xb7224f2c>
, который по какой-то причине имеет это поверх стека трассировки
vendor/rails/activerecord/lib/active_record/attribute_methods.rb:256:in `method_missing'
vendor/plugins/attribute_fu/lib/attribute_fu/associations.rb:28:in `method_missing'
app/views/answers/_answer.html.erb:7:in `_run_erb_47app47views47answers47_answer46html46erb'
Я использую attribute_fu при импорте опросов в формате xml, но я понятия не имею, почему трассировка вопроса. Выбор есть.
Я также пытался переименовать варианты в альтернативы выбора, но это не дало эффекта.
Есть идеи?