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['用户名'])
在某些方面让我感到困惑。我知道如果我有字典d = {word1:definition1,word2:definition2}
,那么d.get[word1]
将输出definition1
(word1
的 id
)。因此,由于结构 dict.get()
,User.objects
是一个字典。我对这部分线路有一点问题。
谁能向我解释一下对象
的含义是什么?
提前致谢!
最佳答案
objects
是对模型 Manager 的引用,其唯一目的是处理数据库查询以从数据库中检索所需的数据。
虽然它有一个与字典的 get
方法同名的方法 get
,但它们在内部对于数据的位置并没有做同样的事情检索自。
关于python - Django中对象的含义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41925845/