将学生车辆存放在数据库中的最佳方法是什么? 他们可以选择自行车,踏板车或汽车。
有人说最好的方法是在数据库中存储一个哈希值(属性类型是什么?)另外说最好的方法是创建一个Has many:through association。
谢谢!
答案 0 :(得分:2)
如果车辆本身没有任何数据并且您使用的是Postgres 9.2或更新版本,那么我建议将车辆存放在学生桌上的车辆列中。如果车辆可能有关于他们自己的信息,例如他们有多少车轮,最高车速,重量等等,那么通过与学生的关系创建一个带有belongs_to / has_many的车辆表,你会好得多。
更新:如果您想将一个接受数组的列添加到学生表中以保存车辆,您可以执行以下迁移:
def change
add_column :students, :vehicles, :string, array: true, default: []
end