我正在使用Django 1.5.4,並且好像它有這個調試設置,導致save方法不能保存直到視圖成功完成。這使用戶註冊和登錄後的權利不可能。我試着設置DEBUG=False
,沒有幫助。 它發生在每一個模型。 我正在使用MySQL,但我很確定那根本不相關。 我使用電子郵件認證 - 後端,那就是:只有在視圖成功完成後才能保存Django
from django.contrib.auth.models import User
class EmailBackend():
def get_user(self, user_id):
try:
return User.objects.get(pk=user_id)
except User.DoesNotExist:
return None
def authenticate(self, username=None, password=None):
try:
user = User.objects.get(email=username)
except User.DoesNotExist:
return None
if user.check_password(password):
return user
我使用保存的代碼是很平常:
user = User()
user.first_name = full_name[0]
user.last_name = ' '.join(full_name[1:])
user.email = data['email']
user.username = create_username(user.first_name, user.last_name)
user.set_password(data['password'])
user.save()
auth_form = AuthenticationForm(data=request.POST or None)
if auth_form.is_valid():
login(request, auth_form.get_user())
我也看了起來的Django文檔的版本1.5.4和專業,但沒有發現任何東西。
現在,這裏可能會發生什麼?
非常感謝。我真的沒有在網上找到任何東西。儘管這可能是一個簡單的問題。 –