我有风险
模型。我想为每个 User
存储预定义的 risk
。
您吸烟吗?是 |否( bool 值)
多少支香烟? (整数)
您有糖尿病吗? [因为](字符串)
...
我应该如何实现 Risk
以使其能够处理不同类型的答案(整数、 bool 值、字符串)?表格应该如何显示?现在,我正在考虑如下风险
:
Risk
question(string)
answer_type(integer)
answer
我希望以后能够动态添加更多问题。
最佳答案
我的想法是:
Risk
user_id (integer)
question_id (integer)
question(string)
answer_type(integer)
answer (string)
然后,如果您想进行一些统计,则需要根据 answer_type 解析答案。
answer_type -> 1 for text answer
answer_type -> 2 for integer answer
...
例如,如果你想计算整数答案的平均值:
risks = Risks.where(question_id: 1)
if risk.answer_type == 2
total += answer.to_i
end
average = total / User.all.count
关于mysql - 如何处理不同的答案类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20242756/