Привет всем, кто вам полезен (и до свидания, бесполезные люди: D). Я пытаюсь создать пользователя в django (1.2.4), а затем войти в систему после их сохранения. Моя проблема в том, что я получаю NotImplementedError и смотрю на трассировку. s вызывается django.contrib.auth.models.AnonymousUser. Вот часть моего кода просмотра:
def signup(request):
if request.method == 'POST': # If the form has been submitted...
p = request.POST
if not request.user.is_authenticated():
form = UserForm(request.POST) # A form bound to the POST data
if form.is_valid(): # All validation rules pass
# Process the data in form.cleaned_data
# ...
form.save()
user=authenticate(username=p['username'],password=p['password'])
login(request,user)
return HttpResponseRedirect('/') # Redirect after POST
Мне кажется, что он пытается войти в систему под пользователем anymouse, а не под тем, кого я аутентифицирую, как я могу это преодолеть?
Спасибо PS Пользователи создаются в базе данных, они просто не будут регистрироваться с помощью этого кода.
Traceback:
Environment:
Метод запроса: POST
URL запроса: http: // localhost: 8000 / signup /
Версия Django: 1.2.4
Версия Python: 2.6.1
Установленные приложения:
['django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.admin',
'django.contrib.admindocs',
'django_extensions',
"REDACTED_APPs", Установленное промежуточное ПО: ('django.middleware.common.CommonMiddleware', 'django.middleware.locale.LocaleMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware')
Traceback:
File "/Library/Python/2.6/site-packages/django/core/handlers/base.py" in get_response
100. response = callback(request, *callback_args, **callback_kwargs)
File "REDACTED/views.py" in signup
19. login(request,user)
File "/Library/Python/2.6/site-packages/django/contrib/auth/__init__.py" in login
71. user.save()
File "/Library/Python/2.6/site-packages/django/contrib/auth/models.py" in save
430. raise NotImplementedError
Exception Type: NotImplementedError at /signup/
Exception Value: