允许用户在Django中删除自己的注释

rk9*_*919 7 python django django-comments

我正在使用django.contrib.comments.views.moderation模块中的delete()函数.工作人员可以删除任何评论帖,这完全没问题.但是,我还想让已登记的非工作人员有权删除他们的OWN评论帖子和他们自己的OWN.我怎么能做到这一点?

Lup*_*uch 5

如果要将注释标记为已删除,请django.contrib.comments.views.moderation.delete()执行以下操作:

from django.contrib.auth.decorators import login_required
from django.contrib.comments.models import Comment
from django.shortcuts import get_object_or_404
from django.conf import settings
from django.contrib import comments

@login_required
def delete_own_comment(request, message_id):
    comment = get_object_or_404(comments.get_model(), pk=message_id,
            site__pk=settings.SITE_ID)
    if comment.user == request.user:
        comment.is_removed = True
        comment.save()
Run Code Online (Sandbox Code Playgroud)