我想抓住它們並將有用的消息返回給用戶。文檔https://docs.djangoproject.com/en/1.4/topics/auth/表示在給定無效的用戶名時會引發ValueError。當用戶名已經存在時,還有IntegrityError。這些都是?Django:create_user會拋出什麼樣的異常?
這是通常的做法嗎?
我想抓住它們並將有用的消息返回給用戶。文檔https://docs.djangoproject.com/en/1.4/topics/auth/表示在給定無效的用戶名時會引發ValueError。當用戶名已經存在時,還有IntegrityError。這些都是?Django:create_user會拋出什麼樣的異常?
這是通常的做法嗎?
如果您沒有使用Django Auth Forms,那麼您必須手動進行驗證。簡單的方法是當用戶提交您應該檢查的自定義表格時:
User.objects.filter(username=username).exists()
User.objects.filter(email=email).exists()
FYI:有一些已經Django的驗證包如django-allauth,django-userena以及更多處理所有東西的相當不錯,而不是通過你自己重新發明輪子。
您可以隨時查看源代碼,因爲它們已移至Github或在您的計算機上的Python site-packages
目錄中找到它。
只要去django/contrib/auth/
並分析一些代碼。