我使用Django-registration與Django 1.8.15註冊用戶。我urls.py
看起來是這樣的:Django註冊如何檢查用戶是否存在
from registration.backends.hmac.views import RegistrationView
url(r'^registration/register/$', RegistrationView.as_view(form_class=MyCustomSubscriberForm), name="registration_register"),
這基本上是一個CBV其中我公司提供的格式和模板。 這裏的形式:
class MyCustomSubscriberForm(RegistrationForm):
class Meta:
model = MyCustomSubscriber
fields = ('firstname', 'surname', 'email',)
我的問題是如何在這個CBV處理驗證?
此刻,如果例如有人試圖用已經使用的電子郵件地址註冊Django給出IntegrityError at /registration/register/
...
什麼是使用Validators from Django-registrations的最佳方式?例如 - 我如何確保如果具有特定電子郵件的用戶已經存在,用戶會在模板中收到通知?
如何擴展此CBV或在我的代碼中處理這個錯誤與Django註冊已提供的驗證器?
你需要處理的編輯模式;) '''QS = User.objects.filter(電子郵件=數據) 如果self.instance.id: QS = qs.exclude(ID = ID)''' – Mounir
你絕對正確,我已經編輯了我的答案。但由於他有註冊表格,他可能不會使用它進行編輯。 – ihhcarus
感謝您的建議,這當然是可能的!當然,這是一個有效的答案,但也有可能使用內置的Django註冊功能,正是這一點 - 正如我的答案中所述。 – user1544500