この公式の指示に従って、でcustom user
モデルを作成しましUSERNAME_FIELD = 'email'
た。username
フィールドを引き続き使用しますが、必須ではありません。EMAIL
異なる場合がありUSERNAME
ます。問題はallauth
、管理パネルの列USERNAME
にユーザーのメールアドレスが表示されることです。
テストとして、次のことを行いました。
test_user_name@gmail.com
「ホーム -> Custom_User -> ユーザー」(へCHANGED_test_user_name@gmail.com
) でユーザーの電子メールを変更するとallauth
、「ホーム -> アカウント -> 電子メール アドレス」で、変更された値がUser
列ではなく列に表示されE-mail address
ます。
新しくインストールした Django をチェックインしたところ、すべてが期待どおりに機能します。
私はそのような設定を使用して必要なものを手に入れることを期待していましたallauth
:
ACCOUNT_USER_MODEL_USERNAME_FIELD = 'username'
ACCOUNT_USER_MODEL_EMAIL_FIELD = 'email'
ACCOUNT_USERNAME_REQUIRED = False
ACCOUNT_EMAIL_REQUIRED = True
ACCOUNT_AUTHENTICATION_METHOD = 'email'
しかし運がない。また、さまざまな設定を試しましたが、この問題を修正できません。
フィールドをまったく使用しない場合username
(models.py から削除 + ACCOUNT_USER_MODEL_USERNAME_FIELD = None)、ユーザーの電子メールを変更する場合、allauth
その動作は変更されません - 変更された電子メールをUser
列ではなく列に表示し続けEmail address
ます。
なにが問題ですか?