Skip to main content
 首页 » 编程设计

python之如何删除django中的用户

2025年05月04日52rubylouvre

这听起来可能是个愚蠢的问题,但我很难使用此 View 在 django 中删除用户:

@staff_member_required  
def del_user(request, username):     
    try: 
        u = User.objects.get(username = username) 
        u.delete() 
        messages.sucess(request, "The user is deleted") 
    except: 
      messages.error(request, "The user not found")     
    return render(request, 'front.html') 

在 urls.py 中我有

url(r'^del_user/(?P<username>[\w|\W.-]+)/$', 'profile.views.del_user'),  

我得到的是 The user not found 而不是用户被删除。

这里有什么问题吗?

请您参考如下方法:

您应该将代码更改为:

@staff_member_required  
def del_user(request, username):     
    try: 
        u = User.objects.get(username = username) 
        u.delete() 
        messages.success(request, "The user is deleted")             
 
    except User.DoesNotExist: 
        messages.error(request, "User doesnot exist")     
        return render(request, 'front.html') 
 
    except Exception as e:  
        return render(request, 'front.html',{'err':e.message}) 
 
    return render(request, 'front.html')  

并在模板中显示 err 以查看更多错误消息