1
Djangoでビルドインユーザーモデルを拡張したいと考えています。私は、Userから継承したサブクラスを作成するだけでこれを行います。主な問題は、user = request.userを取得すると、このユーザーは、私が作成した新しいサブクラスではなく、組み込みのUserタイプです。 これを行うには何がベストプラクティスですか?ユーザーモデルを拡張するDjangoのベストプラクティス
Djangoでビルドインユーザーモデルを拡張したいと考えています。私は、Userから継承したサブクラスを作成するだけでこれを行います。主な問題は、user = request.userを取得すると、このユーザーは、私が作成した新しいサブクラスではなく、組み込みのUserタイプです。 これを行うには何がベストプラクティスですか?ユーザーモデルを拡張するDjangoのベストプラクティス
私はあなたが、ドキュメントextending-the-existing-user-modelでsettings.py詳細に例をAUTH_USER_MODEL
を追加することを忘れ思う:
AUTH_USER_MODEL = 'myapp.MyUser'
やコメントで助けによって、あなたはAbstractUser
の代わりに使用することについてのベストプラクティス、より良いを話す場合User
from django.contrib.auth.models import AbstractUser
また、OPではUserではなくAbstractUserを拡張する必要があります。 –
'AUTH_USER_MODEL'を指定した後に' makemigrations'を実行してから 'migrate'を実行することを忘れないでください – IAmKale
私のモデルをAbstractUserから拡張しますが、このエラーを報告します: django.core.exceptions.FieldError:自動生成フィールド 'user_ptr'クラス 'User'とparent_linkの 'CustomUser'が同じ名前の宣言されたフィールドと衝突します。 –