我正在开发一个用rails编写的网络应用程序。它目前在带有postgres数据库的heroku上运行。
我应该添加一项功能,用户可以为每个用户的学生输入最多三个代码。代码本身是无关紧要的,它们只是将输入数据库的字符串。
这让我陷入两难境地。我不确定如何最好地存储代码与学生表的关系。我最初的想法是使用rails方法serialize
在数组中存储最多三个代码,但我已经读过,更多时候,将数据存储在数据库中的数组并不是你想要做的。
我应该创建一个新表“代码”并与“学生”表建立has_many
关系吗?或者是否有更好的建立这种关系?
答案 0 :(得分:1)
根据您的情况,这听起来是拥有Code
模型然后设置 has_many 与Student
模型关联的最合理方法。
student
has_many codes
code
belongs_to student
。