什么是用于多态的_type列?

时间:2012-03-16 03:34:25

标签: ruby-on-rails database model polymorphism

Rails Guide开始,要在一个模型上建立多态关系,我需要为相应的表添加两列。

如下图所示,_id列用作外键。但我无法弄清_type列的用法?它的用途是什么?

enter image description here

1 个答案:

答案 0 :(得分:5)

_type列用于标识来自哪个资源。在这种情况下,多态资源可以是EmployeeProduct之一。换句话说:图像可以与 产品或员工相关。

_type列只包含“Employee”或“Product”字符串。访问此关联时,Rails将使用它来了解用于加载关联对象的模型。