2021/06/09
Django モデルDjango createsuperuserコマンドで指定できるフィールドを追加する方法
python manage.py createsuperuser
すると、ユーザー名、メールアドレス、パスワードを聞かれます。これらのフィールドに対して自由に値を設定して、管理者ユーザーを作ることができます。
カスタムユーザーを使っていることが前提になりますが、3つのフィールド以外にも値を指定できるように実装できます。
やり方としては REQUIRED_FIELDS
にフィールド名を追加するだけです。
models.py
class User(AbstractBaseUser, PermissionsMixin):
"""カスタムユーザーモデル"""
・・・
# フィールド名を追加
REQUIRED_FIELDS = ["hoge_field", "fuga_field"]
・・・
これだけで、createsuperuserコマンドを実行した際に追加フィールドの値も設定できます。
カスタムユーザーモデル、REQUIRED_FIELDSについては書籍でも解説しています。