https://qiita.com/estaro/items/5a9e4eb8f0902b9977e3
https://qiita.com/tinaba/items/01bc72c100f97438a36e
[root@centos ~]# pip3.6 install Django
Collecting Django
Downloading https://files.pythonhosted.org/packages/32/ab/22530cc1b2114e6067eece94a333d6c749fa1c56a009f0721e51c181ea53/Django-2.1.2-py3-none-any.whl (7.3MB)
100% |████████████████████████████████| 7.3MB 161kB/s
Collecting pytz (from Django)
Downloading https://files.pythonhosted.org/packages/30/4e/27c34b62430286c6d59177a0842ed90dc789ce5d1ed740887653b898779a/pytz-2018.5-py2.py3-none-any.whl (510kB)
100% |████████████████████████████████| 512kB 1.2MB/s
Installing collected packages: pytz, Django
Successfully installed Django-2.1.2 pytz-2018.5
You are using pip version 9.0.1, however version 18.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
[vagrant@centos]$ cd /var/www/html/
[vagrant@centos html]$ django-admin startproject playground
[root@centos playground]# pip3.6 install PyMySQL==0.7.9
https://codelab.website/python3-django-mysql/
mysql ユーザ作成
grant all on playground.* to playground@localhost identified by '******'
https://techacademy.jp/magazine/5110
[vagrant@centos playground]$ vi ./settings.py
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'playground', # DB名を設定
'USER': 'playground', # DBへ接続するユーザIDを設定
'PASSWORD': '&Q56oAUEW.', # DBへ接続するユーザIDのパスワードを設定
'HOST': 'localhost',
'PORT': '3306',
'OPTIONS': {
'init_command': "SET sql_mode='STRICT_TRANS_TABLES'",
},
'TEST': {
'NAME': 'test_sample'
}
}
}
[vagrant@centos playground]$ python3.6 manage.py migrate
/usr/lib/python3.6/site-packages/pymysql/cursors.py:170: Warning: (3135, "'NO_ZERO_DATE', 'NO_ZERO_IN_DATE' and 'ERROR_FOR_DIVISION_BY_ZERO' sql modes should be used with strict mode. They will be merged with strict mode in a future release.")
result = self._query(query)
/usr/lib/python3.6/site-packages/pymysql/cursors.py:170: Warning: (3090, "Changing sql mode 'NO_AUTO_CREATE_USER' is deprecated. It will be removed in a future release.")
result = self._query(query)
Operations to perform:
Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
Applying contenttypes.0001_initial... OK
Applying auth.0001_initial... OK
Applying admin.0001_initial... OK
Applying admin.0002_logentry_remove_auto_add... OK
Applying admin.0003_logentry_add_action_flag_choices... OK
Applying contenttypes.0002_remove_content_type_name... OK
Applying auth.0002_alter_permission_name_max_length... OK
Applying auth.0003_alter_user_email_max_length... OK
Applying auth.0004_alter_user_username_opts... OK
Applying auth.0005_alter_user_last_login_null... OK
Applying auth.0006_require_contenttypes_0002... OK
Applying auth.0007_alter_validators_add_error_messages... OK
Applying auth.0008_alter_user_username_max_length... OK
Applying auth.0009_alter_user_last_name_max_length... OK
Applying sessions.0001_initial... OK