【发布时间】:2011-11-09 00:22:04
【问题描述】:
在这种情况下,我有 2 个或更多模型:
class Store(models.Model):
name = models.CharField(max_length = 100)
homepage = models.URLField(verify_exists = False)
....
class Product(models.Model):
display = models.BooleanField(default = True)
created = models.DateTimeField(auto_now_add = True)
changed = models.DateTimeField(auto_now_add = True, auto_now = True)
....
这些都需要不同的评论模型/形式。例如:
- 产品评论 我想要一些额外的信息,如产品评级、优缺点等。
- 但对于商店,我希望有一些字段,如评价客户支持、评价沟通/响应、如果运费合理则布尔值等。
这两个模型都是 contrib Comments 模型的子类,因此它与现有的 admin 和 cmets 模板标签兼容。
然而,Django 的built-in comments settings 似乎相当死板,只允许使用get_model() and get_form() 方法自定义一个 模型/表单。
我使用不同的方法让它在这两种情况下都能正常工作,但它涉及大量的代码重复,如果我要添加第 3 或第 4 类型的注释子类,这是相当不切实际的。
有人知道更好的方法吗? 我已尝试搜索 StackOverflow,但似乎没有任何结果类似于此用例。
【问题讨论】:
-
听起来您正在寻找评级系统。为什么不使用评论系统作为灵感并编写自己的评分应用程序?好处是能够为所有 cmets 等添加报告等。
-
不是那么多,它只是带有一些额外字段的 cmets。这个例子是为了表达形式不同,我的错。