在尝试验证我的用户时,我在django中遇到了一个奇怪的错误.
这是代码:
views.py
from django.shortcuts import render_to_response from django.http import HttpResponseRedirect from django.template import RequestContext from django.core.context_processors import csrf from django.contrib.auth.forms import AuthenticationForm from django.contrib.auth import authenticate, login def authenticate(request): username = request.POST['username'] password = request.POST['password'] user = authenticate(username=username, password=password) if user is not None: if user.is_active: login(request, user) # Redirect to a success page. else: pass # Return a 'disabled account' error message else: pass # Return an 'invalid login' error message.
它一直给我这个错误:
Environment: Request Method: POST Request URL: http://localhost:8000/authenticate/ Django Version: 1.6.1 Python Version: 2.7.3 Installed Applications: ('django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'neededform') Installed Middleware: ('django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware') Traceback: File "/usr/local/lib/python2.7/dist-packages/Django-1.6.1-py2.7.egg/django/core/handlers/base.py" in get_response 114. response = wrapped_callback(request, *callback_args, **callback_kwargs) File "/home/jarvis/django/web/web/views.py" in authenticate 26. user = authenticate(username=str(username), password=password) Exception Type: TypeError at /authenticate/ Exception Value: authenticate() got an unexpected keyword argument 'username'
我无法理解这个错误的根源.有人面临同样的问题?