我目前不确定是否应该使用此rails功能,或者我应该在我的Photo模型中添加两列employee_id
和product_id
。
如果员工和产品最终都具有相同的ID,该怎么办?这会破裂吗?
答案 0 :(得分:6)
我认为你绝对应该在这里使用多态。如果您将来再添加一个可以拥有照片的模型,该怎么办?您需要额外的迁移才能实现它!
它不会在类似的id上中断,就像多态关联一样,你将使用一个额外的字段..._type
,就像这里:
class CreatePictures < ActiveRecord::Migration
def change
create_table :photos do |t|
t.string :name
t.integer :imageable_id
t.string :imageable_type
t.timestamps
end
end
end