1
目前,我有如下表結構:的Ruby/Rails 4 - 滿足特定條件
Questions
* id
* prompt
Options
* id
* name
* image
Question Assignments # Acts as a join table for the tables above and holds #
# a boolean of whether an option is "correct" or not. #
* question_id
* option_id
* correct
而且,我們說,我們有存儲在數據庫中的最新信息:
Question:
id: 4
prompt: "Please select the green pictures. Choose 3."
Question_assignments:
option_id: 1
question_id: 4
correct: true
option_id: 2
question_id: 4
correct: false
option_id: 3
question_id: 4
correct: true
option_id: 4
question_id: 4
correct: false
爲了達到「正確」的答案,用戶將不得不僅僅提交選項和。提交的選項的任何其他組合都是不正確的。
我的問題是:如何迭代和評估用戶提交的答案,不管整體問題是否正確?
例如,用戶可提交以下(這將是基於上述情形一個「錯誤」的答案):
'question_id' => 4
'option_ids[]' => [1, 2, 4]
我想到會是這樣的邏輯:
查找基於question_id(4)所有正確答案:這將 回報 '1' 和 '3'
迭代通過用戶提交的VALU es,看它是否等於'1'或'3'
然後不知道該從哪裏做什麼?
希望這是有道理的,因爲它可能很難闡明。
非常感謝!