gpt4 book ai didi

django - 如何为内置评论框架的django提供删除按钮

转载 作者:行者123 更新时间:2023-12-02 17:50:39 27 4
gpt4 key购买 nike

我正在使用 Django 评论框架。它说它提供了很多功能,而且我在源文件中也看到有各种选项,但是文档有点差。

有两个问题

  1. 我想为每个发布的评论提供一个删除按钮,我不想将用户重定向到另一个页面。我只想删除带有确认消息的评论。我没有找到任何文档告诉我如何在 django comments framework
  2. 中执行此操作
  3. 如果在提交评论表单时出现错误,用户将重定向到预览页面(也处理错误),我不希望这样。我希望用户被重定向到同一页面,并出现适当的错误。我该怎么做。

感谢任何帮助或指导

最佳答案

Timmy 的 View 代码片段仍然缺少一个导入语句并且没有返回响应。这是相同的代码,已更新为现在的外部 django_comments 应用程序(django 1.6+):

from django.shortcuts import get_object_or_404
import django.http as http
from django_comments.views.moderation import perform_delete
from django_comments.models import Comment

def delete_own_comment(request, id):
comment = get_object_or_404(Comment, id=id)
if comment.user.id != request.user.id:
raise Http404
perform_delete(request, comment)
return http.HttpResponseRedirect(comment.content_object.get_absolute_url())

这将在没有任何消息的情况下重定向回原始页面(但大概少了一条评论)。

为此 View 注册一个 URL:

 url(r'^comments/delete_own/(?P<id>.*)/$', delete_own_comment, name='delete_own_comment'),

然后直接修改comments/list.html包含:

{% if user.is_authenticated and comment.user == user %}
<a href="{% url 'delete_own_comment' comment.id %}">--delete this comment--</a>
{% endif %}

关于django - 如何为内置评论框架的django提供删除按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8771852/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com