我正在为我的新项目设计一个数据库。我想知道我的数据库设计是否正确,因为我不确定 100%。
允许用户添加内容:图像、文本、URL。内容将列在单页上,因此我认为创建单一内容类型将是最佳选择。
到目前为止,我有以下结构:
post
- id
- type ENUM
- title
- image NULL
- text NULL
- URL NULL
post_image
- id
- filesystem
- filename
post_text
- id
- body
post_url
- id
- link
当然,我为 post tabke 和 post_* 类型表创建了 1:1 关联。我在我的应用程序中使用 Doctrine 作为 ORM。为了获取内容,我有一个自定义方法来检查类型并返回正确的内容(文本、URL 或图像路径)。
这是您推荐的方法吗?
我有两个选择:
- 在 post 表中创建 nullable
image
和字段text
url
- 创建单个
content
字段
虽然使用上述两种方法,我得到了非常简单和可维护的数据库结构,但这可能会在将来引起一些问题。
期待听到一些社区的声音。
最好的!