单表继承中的可选类型用法

时间:2012-11-12 15:44:04

标签: ruby-on-rails activerecord single-table-inheritance

我有一个资产类,它有类型,名称,标签等。

资产类型包括:头像,图片,视频,摘要等。

我想要视频<资产类型仅适用于type ='video',但适用于所有其他类型 - 应使用资产。

如果我使用self.inheritance_column ='type' - 它会失败,因为无法找到Avatar类。 有没有办法如何将所有类型映射到Asset类除了视频?

谢谢, 基里尔萨利金

1 个答案:

答案 0 :(得分:1)

那不行。你要么用这些类型进行STI,要么你不是。

这样做的方法是使用type作为您的STI列,并使用asset_type作为您的分类列。然后,只有视频获得type列,所有其他资源都使用asset_type列来说明内容是什么。

相关问题