Istnieje kilka adapterów w konfiguracji allauth. Na przykład ten:
ACCOUNT_ADAPTER (="allauth.account.adapter.DefaultAccountAdapter")
Specifies the adapter class to use, allowing you to alter certain default behaviour.
Możesz określić nowy adapter, zastępując domyślny. Wystarczy zastąpić metodę clean_email.
class MyCoolAdapter(DefaultAccountAdapter):
def clean_email(self, email):
"""
Validates an email value. You can hook into this if you want to
(dynamically) restrict what email addresses can be chosen.
"""
*** here goes your code ***
return email
Następnie zmodyfikować ACCOUNT_ADAPTER na settings.py
ACCOUNT_ADAPTER = '**app**.MyCoolAdapter'
Sprawdź domyślne zachowanie na: https://github.com/pennersr/django-allauth/blob/master/allauth/account/adapter.py
Aby odrzucić adres e-mail, podnieść 'wyjątek django.forms.ValidationError' . – Flimm
jak to zrobić w innym polu formularza? – Hakim