0

アンケートの質問に答える Rails アプリケーションがあります。ただし、これはトレードオフを選択するための実験用であり、各質問に対して多くの回答が動的に生成されます。したがって、各質問に対してどの回答が選択されたかだけでなく、ユーザーに提示された各オプションが何であったかを記録する必要があります。

だから、私のモデルは

class Survey < ActiveRecord::Base
  belongs_to :user
  has_many :questions
end

class Question < ActiveRecord::Base
  belongs_to :survey
  has_many :possible_answers
end

class PossibleAnswer < ActiveRecord::Base
  belongs_to :question
end

ここから、どのPossibleAnswerが選択されたかを追跡するためのベストプラクティスは何ですか? そして、PossibleAnswer モデル内のインジケーターと、1 つだけが選択されたことを確認するための検証ロジックは? have_manyまたは、 RejectedAnswers とhave_oneAcceptedAnswerができるように、質問内の関係を再定義する必要がありますか?

これを行うには複数の方法があることは知っていますが、一般的にどのオプションがベストプラクティスと見なされるかを理解しようとしています.

4

1 に答える 1

1

質問にaccepted_answer_idを追加して、PossibleAnswerを指すようにします。

于 2013-03-16T06:10:16.913 に答える