我正在开发一个专有的反馈应用程序。我有一个名为主题的表,我将用它来存储建议、问题和问题。
topics [ id, user_id, title, content, type[suggestion, question, problem] ]
我可以使用列轻松地将这些数据存储在一个表中,type
以区分三种不同的主题类型。
但是,还有另一个问题:每个主题也有自己的响应,并且响应与主题本身非常相似。我也很想将它们存储在同一张表中。所以现在我有type (suggestion, question, problem)
and subtype (topic, response)
。
我对我的主题表要求太多了吗?我应该将数据拆分到单独的表中吗?我正在为这个特定项目使用 Postgres 和 Rails。
可视化的最佳方法是将其与 StackoverFlow 进行比较。SO 将问题和答案存储在同一个posts
表中。现在假设,而不是只有问题,所以决定允许建议和问题。他们还会使用同一张桌子吗?