当我只有两个对象的状态时,例如员工的'主动'和'退休',我会在表格用户中设置一个布尔字段来计算用户的状态。
但如果我有一个具有三个或更多状态的对象,我该怎么办?任务可以是“新的”,“进行中的”,“完成的”和“关闭的”,并且计算机可以是“订购的”,“在商店中”,“在使用中”,“在维修中”并且最终“处置”。
我可以看到几个选项:
1)附加表'状态'。状态属于任务,任务有一个状态。对我来说看起来不错,但需要额外的表格。
2)以某种方式在'users'表中有一个状态列表。不知道是否可能。我正在使用PostgreSQL。
3)确定1表示“新”,2表示“正在进行”,3表示“完成”并将这些数字用作停顿。
4)使用状态名称作为状态。将字段'status'设为字符串。
最好的Rails方式是什么?