我有一个复杂的关系,我很难在视图中表示。我需要一些帮助来找出建立关系的最佳方式,这可能会解决我的大部分问题。
我在这里有一个图表:Diagram
基本上我正在尝试设置动态调查类型的应用程序。管理员可以去添加问题和问题选择。当用户登录时,他们可以回答这些问题。他们每个问题只能选择一个答案,但会有一个部分,他们可以选择他们从“匹配”中接受的答案。这将用于匹配用户。
例如:
问题:
你最喜欢的颜色是什么? A)红色B)黄色C)蓝色
比利选择红色,但表示他会接受红色或黄色作为比赛的答案。 约翰选择黄色并说他会接受红色或黄色的答案。因此,因为他们都选择了彼此“接受列表”中的颜色,那么这两个颜色将匹配问题。建立关系并在视图中表示关系的好方法是什么?我很难将这个脑筋缠绕在这个......
谢谢!
答案 0 :(得分:1)
我不知道你是否可以改变你的架构,但如果是的话,我认为你可以做到这一点。
我会尝试做类似下面的事情:
模型(表格):
Users
-id
Questions
-id
Choices
-id
-question_id
Answers
-id
-user_id
-choice_id
-question_id
-is_acceptance (boolean)
User has_many answers
Qestion has_many choices
Choice belongs_to question
Answer bleongs_to user , question
然后你可以将所有答案保存在一个表中并标记(真或假)只有主答案。 毕竟你可以编写自己的逻辑来回答相同的答案,接受答案等。