DjangoにおいてMySQLと接続してみます。
バージョンの確認。
1 2 |
$ python -m django --version 2.2.6 |
MySQLの環境は各自用意しておいて下さい。
関連ページ
MySQLと接続
本記事執筆時点で、Djangoが推奨しているMySQLと接続するためのmysqlclientドライバーをインストールします。
1 2 3 4 |
$ pip install mysqlclient 省略〜 Successfully installed mysqlclient-1.4.6 |
SQLiteと違い、MySQLではあらかじめデータベースを用意しておく必要があります。django_dbという名前のデータベースを作成しました。
1 |
mysql> CREATE DATABASE django_db; |
setting.pyのDATABASESを編集します。
setting.py
1 2 3 4 5 6 7 8 9 10 |
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'django_db', # データベース名 'USER': 'root', 'PASSWORD': 'pass', 'HOST': '127.0.0.1', 'PORT': '3306', } } |
マイグレーションファイルを作成します。※モデル(models.py)に何も書いていない場合は実行しなくてもよい。
1 |
$ python manage.py makemigrations myapp |
マイグレーションを実行します。
1 |
$ python manage.py migrate |
生成されたテーブルを確認します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
mysql> SHOW TABLES; +----------------------------+ | Tables_in_django_db | +----------------------------+ | auth_group | | auth_group_permissions | | auth_permission | | auth_user | | auth_user_groups | | auth_user_user_permissions | | django_admin_log | | django_content_type | | django_migrations | | django_session | +----------------------------+ 10 rows in set (0.00 sec) |
参照ページ
django ドキュメント
Databases MySQL notes