DjangoBrothers BLOG ✍️

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については書籍でも解説しています。

参考