1

私は現在、このレール機能を使用する必要があるのか​​ 、それとも写真モデルに2つの列employee_idを追加するだけなのか疑問に思っています.product_id

従業員と製品の両方が同じ ID を持つことになった場合はどうなりますか? これ壊れますか?

4

1 に答える 1

6

ここでは間違いなくポリモーフィックを使用する必要があると思います。将来、写真を撮影できるモデルをもう 1 つ追加するとしたら? その場合、それを達成するには追加の移行が必要になります!

類似の 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
于 2013-10-21T12:42:00.973 に答える