Django - 对多种对象类型的评论,哪种方法?

时间:2012-12-03 16:22:48

标签: django database-design triggers comments

应用程序包含多种类型的对象(文章,歌曲,个人资料等),每个对象都有自己的表格。所需的功能是允许用户对这些对象发表评论。考虑的最佳方法是什么:

  • 查找延迟(检索对象及其所有注释)
  • 数据完整性
  • 可维护性

选项包括:

  • Django contrib注释框架,在删除操作上触发信号,调用例程从注释表中删除注释。

  • Django contrib注释框架中包含触发器(需要内容类型PK /表名之间的映射)。

  • 使用外键为每个对象类型指定一个表的注释。

  • 为每个对象类型指定一个表的注释,并使用Django注释框架。删除框架的注释表并使用UNION创建一个视图,以从注释表中检索所有注释(包括ON UPDATE / INSERT / DELETE触发器),模仿原始注释框架表的行为。

1 个答案:

答案 0 :(得分:1)

使用django.contrib.comments和django信号。如果需要,您可以在将来切换到自定义解决方案。不要过早优化,难以维护。