2
在我的表單中,只要有人使用他們的用戶名註冊,我就會得到這個。我如何防止錯誤轉到一個全新的黃頁,並讓它回到用戶並將其作爲表單錯誤提出來?如何捕獲UNIQUE約束失敗:auth_user.username錯誤?
在我的表單中,只要有人使用他們的用戶名註冊,我就會得到這個。我如何防止錯誤轉到一個全新的黃頁,並讓它回到用戶並將其作爲表單錯誤提出來?如何捕獲UNIQUE約束失敗:auth_user.username錯誤?
嘿,這是非常簡單,你只使用Django內置AuthenticationForm
from django.contrib.auth.forms import AuthenticationForm
form = AuthenticationForm(request.POST)
if form.is_vaild():
form.save()
else:
# handle error
# you can also use form.errors as message
如果唯一約束拋IntegrityError:
from django.db import IntegrityError
try:
user.save()
except IntegrityError as e:
if 'UNIQUE constraint' in e.message:
#do something
對不起,這是不是你在計算器發問。你需要具體,最重要的是,張貼你嘗試過的一些代碼。您目前的描述過於籠統,並沒有幫助,我們無法爲您提供幫助。想象一下,我寫了一個答案:你可以把你的代碼封裝在'try except'中,然後用表單重定向到同一頁面,然後在頁面中顯示錯誤,這也是沒有用的,對吧? –
@ShangWang其實真的很有幫助 – swedishfished