ユーザーがクイズの質問を作成するアプリケーションがあります。さまざまな回答タイプから選択できます:yes / noブール値、true / falseブール値、整数、文字列など。
a)それらの回答をどのように保存すればよいですか?文字列型の1つの列に?それとももっと良い方法はありますか?
b)ユーザーが質問に回答しているときに、検証をどのように処理しますか?回答の種類が異なれば、検証も異なります。
ありがとう!
ユーザーがクイズの質問を作成するアプリケーションがあります。さまざまな回答タイプから選択できます:yes / noブール値、true / falseブール値、整数、文字列など。
a)それらの回答をどのように保存すればよいですか?文字列型の1つの列に?それとももっと良い方法はありますか?
b)ユーザーが質問に回答しているときに、検証をどのように処理しますか?回答の種類が異なれば、検証も異なります。
ありがとう!
両方とも2つの列をお勧めしますStrings
。最初answer
のを作成し、他のを作成しanswer_type
ます。
次に、カスタム検証を作成できます。
class MyValidator < ActiveModel::Validator
def validate(record)
if record.answer_type == 'String'
# preform String validations on record.answer
else if record.answer_type == 'Integer'
# preform Integer validations on record.answer
else if record.answer_type == 'Boolean'
# preform Boolean validations on record.answer
end
end