0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

DjangoでMySQLに繋いだ後にAdminにログインできなくなった時の解決法

Posted at

#背景

ローカルで一通り開発した後によっしゃGAEのMYSQLに繋ぐか!ってなった時に繋いでmigrateしたらerrorが出てしかもadminにログイン出来ない!となった。

実際のエラー内容は
table django_session doesn't exist

#環境

MacOS Mojave 10.14
Python 3.7.3
Django 2.2

#原因探し

とりあえずpython manage.py showmigrationsしてみたら

$ python3 manage.py showmigrations
admin
 [X] 0001_initial
 [X] 0002_logentry_remove_auto_add
 [X] 0003_logentry_add_action_flag_choices
auth
 [X] 0001_initial
 [X] 0002_alter_permission_name_max_length
blog
 [ ] 0001_initial
 [ ] 0002_auto_20190912_2307
 [ ] 0003_auto_20190912_2314
 [ ] 0004_auto_20191001_1124
sessions
 [ ] 0001_initial

こんな感じ。
そもそもmigrateをした時にblogで詰まっていた為そのあとのsessionsが実行されていないために起こっていたerrorみたいですね。

#応急処置

sessionsがmigrateされればとりあえずadminにログインできるようになるだろうという仮説を立てて、

python3 manage.py migrate sessions

をやってみると

Operations to perform:
  Apply all migrations: sessions
Running migrations:
  Applying sessions.0001_initial... OK

と出て実際にログインもできたのでとりあえず応急処置的になんとかするならこれで大丈夫かと。

blogのmodel.pyをしっかり書けていればそもそも発生しなかった現象なのでもう一度modelの書き方をしっかり学び直そうと思います。

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?