Django中对象的含义

时间:2017-01-29 20:54:48

标签: python django dictionary

def signup(request):
    if request.method == 'POST':
        if request.POST['password1'] == request.POST['password2']:
            try:
                user = User.objects.get(username=request.POST['username'])
                return render(request, 'accounts/signup.html', {'error':'Username has already been taken'})

            except User.DoesNotExist:
                user = User.objects.create_user(request.POST['username'], password=request.POST['password1'])
                login(request, user)
                return render(request, 'accounts/signup.html')
        else:
            return render(request, 'accounts/signup.html', {'error':'Passwords didn\'t match'})
    else:
        return render(request, 'accounts/signup.html')

在以下程序中,行

user = User.objects.get(username=request.POST['username'])

在某些方面令我困惑。我知道如果我有字典d = {word1 : definition1, word2 : definition2},那么d.get[word1]将输出definition1id的{​​{1}})。所以word1是一个字典,因为结构User.objects。我对这一部分有一点问题。

任何人都可以向我解释dict.get()的含义是什么吗?

提前致谢!

1 个答案:

答案 0 :(得分:1)

objects是对模型Manager的引用,其唯一目的是处理数据库查询以从数据库中检索所需数据。

虽然它的方法get与字典的get方法具有相同的名称,但它们在内部不会对从中检索数据的位置做同样的事情。