AttributeError at /login/
来源:9-2 通过django内置的login完成登录
这位同学很懒
2020-05-04
AttributeError at /login/
'tuple' object has no attribute 'get'
Request Method: POST
Request URL: http://127.0.0.1:8000/login/
Django Version: 2.2
Exception Type: AttributeError
Exception Value:
'tuple' object has no attribute 'get'
Traceback Switch to copy-and-paste view
/Users/cheshaowei/.virtualenvs/mxonline/lib/python3.7/site-packages/django/core/handlers/exception.py in inner
response = get_response(request) …
▶ Local vars
/Users/cheshaowei/.virtualenvs/mxonline/lib/python3.7/site-packages/django/utils/deprecation.py in __call__
response = self.process_response(request, response) …
▶ Local vars
/Users/cheshaowei/.virtualenvs/mxonline/lib/python3.7/site-packages/django/middleware/clickjacking.py in process_response
if response.get('X-Frame-Options') is not None: …
▶ Local vars
Request information
USER
admin
GET
No GET data
POST
Variable Value
username
'admin'
password
'admin'
csrfmiddlewaretoken
'wOj9lnUIIAgl7woZn3pAqk224SSZq9STvscW5VZvSRYmLCV82rn7hYOgqMZ98tl2'
FILES
No FILES data
写回答
1回答
-
这位同学很懒
提问者
2020-05-04
在 retuen render 时后面括号打错
正确:
return render(request,"login.html",{"msg":"用户名或密码错误"})
class LoinView(View): def get(self, request, *args, **kwargs): return render(request,"login.html") def post(self, request, *args, **kwargs): user_name = request.POST.get("username","") passwoed = request.POST.get("password","") #通过用户名和密码查询用户是否存在 user = authenticate(username=user_name, passwoed=passwoed) if user is not None: # user不为空,表示已经查询到用户 login(request,user) # 登录成功之后,跳转 return render(request,"index.html") else: #user为空,表示没有查询到用户 return render(request,"login.html",{"msg":"用户名或密码错误"})122020-07-25
相似问题