【发布时间】:2020-08-29 23:12:24
【问题描述】:
我创建了测验应用程序,其中用户仅使用用户名登录并继续进行测验,但 django 身份验证不起作用 视图.py
class UserFormView(View):
form_class = UserForm
template_name = 'app/registration_form.html'
def get(self, request):
form = self.form_class(None)
return render(request, self.template_name, {'form': form})
def post(self, request):
form = self.form_class(request.POST)
if form.is_valid():
user = form.save(commit=False)
# cleaned data
username = form.cleaned_data['username']
user.save()
# autheticate
user = authenticate(username=username)
if user is not None:
if user.is_active:
login(request, user)
return redirect('app:quiz_list')
else:
return HttpResponse('active nahi hai')
else:
return HttpResponse('pehchan me nahi hai')
return render(request, self.template_name, {'form': form})
【问题讨论】:
-
那么,如果两个(或更多)人同时使用相同的用户名登录会发生什么?
-
没有任何凭据没有太大意义,因为任何人都可以劫持任何帐户,即使它是随机生成的,它仍然不安全
标签: django django-models django-rest-framework django-forms django-views