0

这就是我希望在我的网站上发表评论的方式:

  • 如果用户已登录,他们会看到一个“添加评论”框,其中包含评论文本的文本字段,以及一个复选框,如果选中则匿名发布评论
  • 如果用户未登录,它将向用户显示上述所有内容,以及一个额外的文本字段,他们可以在其中输入显示名称。

所以基本上如果用户登录,他们可以匿名或使用他们的用户名发表评论。如果他们没有登录,他们可以匿名发帖,也可以当场编一个名字,仅作展示之用。

我该怎么做呢?我已经设置了模板,该模板根据用户的登录状态为用户提供适当的文本框和复选框。

我想到了一个包装函数django.contrib.comments.views.post_comment,但是那个视图只需要一个请求对象,它是不可变的。你会怎么做?

4

2 回答 2

2

听起来您可能需要一个自定义评论应用程序——查看文档。这是另一个示例(此示例将验证码添加到标准评论表单中)。似乎是一个非常简单的过程:)

于 2009-07-22T18:02:19.557 回答
0

只需写下你的观点,你可以从中得到什么,django.contrib.comments.views.post_comment但更适合你的用例。使用支持您的特定 UI 的表单(在演示和验证方面)。看起来好像电子邮件字段不可为空,因此如果一个虚拟值不可用,您将不得不输入一个虚拟值。

如果您可以包装现有功能,那就太好了,但我认为这不切实际。为了使包装方法起作用,必须在编写现有代码时考虑到可包装性——而这并没有发生。

于 2009-07-17T16:46:09.990 回答