Ruby on rails 多态性的差异和有一个,属于
我们有一个名为“人”的模型,它有以下列、名称、密码和行为。我们还有另外三个模型,即管理员、接收者和捐赠者,它们的领域根据人类行为的不同而不同。现在我想知道我是应该使用多态关联,还是“一个属于”关联?你的问题有点不清楚,但这里有一个通用指南: 1) 如果它属于多个其他模型,那么它应该是多态的 2) 如果它只属于另一个模型,那么它应该属于另一个模型 3) 如果您不确定您的关联的未来结构,那么多态性是一个很好的选择,因为它可以适合几乎任何结构,并且很容易撤销Ruby on rails 多态性的差异和有一个,属于,ruby-on-rails,ruby-on-rails-4,ruby-on-rails-3.2,Ruby On Rails,Ruby On Rails 4,Ruby On Rails 3.2,我们有一个名为“人”的模型,它有以下列、名称、密码和行为。我们还有另外三个模型,即管理员、接收者和捐赠者,它们的领域根据人类行为的不同而不同。现在我想知道我是应该使用多态关联,还是“一个属于”关联?你的问题有点不清楚,但这里有一个通用指南: 1) 如果它属于多个其他模型,那么它应该是多态的 2) 如果它只属于另一个模型,那么它应该属于另一个模型 3) 如果您不确定您的关联的未来结构,那么多态性是一个很好的选择,因为它可以适合几乎任何结构,并且很容易撤销 如果您需要任何澄清,请告诉我。在回答此问题
如果您需要任何澄清,请告诉我。在回答此问题之前,我们需要了解多态关联,并首先确定一个属于关联 多态关联:当我们需要建立一个模型与多个模型关联的关联时,我们需要使用多态关联。引用rails指南中的示例
class Picture < ActiveRecord::Base
belongs_to :imageable, polymorphic: true
end
class Employee < ActiveRecord::Base
has_many :pictures, as: :imageable
end
class Product < ActiveRecord::Base
has_many :pictures, as: :imageable
end
类图片
然而,当模型之间只有一对一的关系,并且没有从一个模型关联到第二个模型的关联,以及第一个模型和第三个模型之间的关联时,我们可以选择属于多个关联。希望这能澄清。如果需要更多的澄清,请告诉我
视情况而定。一个用户可以有许多管理员、接收者和捐赠者吗?管理员、接收者和捐赠者是否属于多个用户?管理员、接收者和捐赠者是否属于用户以外的其他模型?