我有四个模型:用户、产品、所有权和位置。产品通过所有权属于用户,用户通过所有权拥有许多产品。当用户创建产品时,我希望如果用户有位置,则产品链接到相同的位置。所以这是我的问题:
我们可以改变这个:
class Location < ActiveRecord::Base
belongs_to :localizable, polymorphic: true
end
class User < ActiveRecord::Base
has_one :location, as: :localizable
end
class Product < ActiveRecord::Base
has_one :location, as: :localizable
end
进入这个:
class Location < ActiveRecord::Base
has_many :localizables, polymorphic: true
end
class User < ActiveRecord::Base
belongs_to :location, as: :localizable
end
class Product < ActiveRecord::Base
belongs_to :location, as: :localizable
end