Python Django,如何使用Django.contrib.auth.models.user通过id获取用户

Python Django,如何使用Django.contrib.auth.models.user通过id获取用户,python,django,django-models,Python,Django,Django Models,我不知道如何通过id从django模型django.contrib.auth.models.User获取用户。。。我想删除一个用户,所以我尝试这样查找: User.objects.get(id=request.POST['id']) 但它不起作用,而且会回来 User matching query does not exist. id由ajax发送: $("#dynamic-table").on('click','.member_delete_btn', function() {

我不知道如何通过id从django模型django.contrib.auth.models.User获取用户。。。我想删除一个用户,所以我尝试这样查找:

 User.objects.get(id=request.POST['id'])
但它不起作用,而且会回来

User matching query does not exist.
id由ajax发送:

 $("#dynamic-table").on('click','.member_delete_btn', function() {
        if (confirm("Are you sure? the member will be deleted...") == true) {
            $.ajax({
                type: "POST",
                url: "/panel/member/delete/",
                data: { id: $(this).attr('data-id'), 'csrfmiddlewaretoken': '{{ csrf_token }}' },
                success: function (data) {
                     if(data.success) {
                         $('#result').html('<div class="alert alert-success"> <strong>Well done!</strong> Member deleted.</div>');
                         list_members();
                     }else{
                         $('#result').html('<div class="alert alert-warning"> <strong>Warning!</strong> Member not deleted.</div>');
                     }
                },
                error: function (data) {
                    alert("failure:" + data.error);
                }
            });
        }
        else {
            return false;
        }
        return false;
    });
$(“#动态表”)。在('单击','上。成员_删除_btn',函数(){
如果(确认(“是否确定?该成员将被删除…”)=true){
$.ajax({
类型:“POST”,
url:“/panel/member/delete/”,
数据:{id:$(this.attr('data-id'),'csrfmiddlewaretoken':'{{csrf_-token}}},
成功:功能(数据){
if(data.success){
$(“#结果”).html(“做得好!成员已删除”);
列出_成员();
}否则{
$(“#结果”).html(“警告!未删除成员”);
}
},
错误:函数(数据){
警报(“故障:+数据错误”);
}
});
}
否则{
返回false;
}
返回false;
});
我调试它,它是好的,用户存在于数据库中,id是正确的

我该怎么做? django用户实例是否有删除方法


谢谢

这就是解决方法,这里的问题是您请求的用户不存在。如果要处理此情况,请使用以下方法:

try:
   user_id = int(request.POST['id'])
   user = User.objects.get(id=user_id)
except  User.DoesNotExist:
   //handle the case when the user does not exist. 

此外,还需要将id转换为
Int

如何填充POST dictionary?就像这样,数据id通过ajax传递,没关系,我通过打印得到它,它是正确的,是简单地点击链接,还是ajax POST?另外,请编辑这个问题-这样更容易阅读。我建议看一下。您可以通过将post dictionary作为路由的一部分来忽略它。好的,那么您可能已经删除了该对象??所有的错误是,您正在寻找的id的对象不存在。这是帖子:,id存在于数据库中…@tubadc您需要将您的id转换为int。我更新了我的答案。