小白请教,业务中需要一个“作品”的 model ,存放类型为纯文本文章、音频、视频三种类型的作品。以下两种设计:
-
通用的一个“作品” model ,包含了 content 字段(存放文章内容), attachment 字段(存放视频、音频)。当类型为文章时, attachment 字段为空,当作品类型为视频、音频时, content 字段为空。
-
一个抽象的“作品” model ,包含了所有类型作品的通用字段。同时再分别有“文本作品”和“多媒体作品”的 model ,继承于抽象的“作品” model ,分别比“作品”多了 content 字段 和 attachment 字段。
请教一下,上面两种设计,那种更灵活?
个人感觉第一种比较灵活,只是字段校验是稍微麻烦点。
还请各位指点。