DjangoでSuperUserのIDとパスワードを忘れてしまった際の対処法

最近久しぶりにDjangoに触ったところSuperUserのIDとパスワードをど忘れしてしまってadmin画面に入れなくなってしまったので、備忘として残しておきます。

なおこの方法はカスタムユーザーモデルではなく、Django標準のUserモデルを使用している場合のみ有効になりますのでご注意ください。

論よりコード

> python manage.py shell
 
>>> from django.contrib.auth.models import User
>>> users = User.objects.all()
>>> user = users[0]
>>> user
<User: yuto>
>>> user.set_password('newpass')
>>> user.save()

IDもパスワードもDjangoのshellを直接編集することで簡単に調べることができる。

SuperUserはUserオブジェクトのインデックス番号0番に登録されているはずなので、変数に格納して出力すればユーザー名を確認できる。

パスワードはUserオブジェクトのset_passwordメソッドを使って新しく変更できる。

変更したらsaveメソッドの実行を忘れずに。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です