我总是卡在外键上,所以我有一个关于外键应该驻留在错误跟踪系统中的位置的问题,在这个系统中,错误在任何给定时间都有一个状态,而只有少数状态存在(打开,正在调查,已解决,待批准)。所以每个状态都有很多与之相关的错误。我的假设是外键应该作为引用状态表中 id 列的 status_id 列驻留在 Bug 表中。这是一个安全的假设吗?
TABLE:
Bug
id integer
desc string
status_id integer fk
Status
id integer
desc string
RAILS MODEL:
Bug
has_one :status
Status
has_and_belongs_to_many :bugs