在 PostGres 数据库中存储复选框的最佳方式是什么

What's the best way to store checkboxes in a PostGres database

将学生的车辆存储在数据库中的最佳方式是什么? 他们可以 select 骑自行车、踏板车或汽车。

有人说最好的方法是在数据库中存储一个散列(属性类型是什么?)其他人说最好的方法是创建一个 Has many :through 关联。

谢谢!

如果车辆本身没有任何数据并且您使用的是 Postgres 9.2 或更新版本,那么我建议将车辆存储在学生 table 的车辆列中的数组中。如果车辆可能有关于它们自己的信息,例如它们有多少个轮子、最高速度、重量等,那么你最好创建一个 table 具有 belongs_to/has_many 的车辆:通过与学生.

更新:如果您想添加一个接受数组的列给您的学生 table 以存放车辆,您可以执行以下迁移:

 def change
   add_column :students, :vehicles, :string, array: true, default: []
 end