我有几个实体,可以有多个关系。
例如,我有以下实体:
- 实体类型
- 标签
- tag_assignment
- news_post
- 帐户
在 entity_type 表中描述了我在项目中拥有的所有实体(例如新闻文章、博客文章、消息、帐户、所有内容) Entity_type 表只有 id 和 name 字段,name 字段描述模型类名称以提高可用性
标签实体只有 id 和 name。它是独立实体,稍后使用 tag_assignment 实体映射到其他实体
标签分配实体有 id、tag_id、entity_type_id 和 entity_id。Entity_type_id 描述了我可以在其中找到实体,entity_id 指定表中的实体。
所以我想从一列到多张表制作以下组合外键:
- tag_assignment.entity_type_id => entity_type (id)
- tag_assignment.entity_id => news_post (id), account (id) 等
是否可以制作这个组合键?我的意思是如果我从 entity_type 表中删除一行来建立依赖关系,那么其他表中的所有内容都将被删除/更新,如果我要删除帐户,则只有具有帐户表外键的 tag_assignments 将被删除。