После учебника Django «python manage.py migrate» не создает таблиц django (MySQL, Pycharm) - PullRequest
0 голосов
/ 21 марта 2020

В mysite.settings.py у меня есть:

   DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': os.path.join(BASE_DIR, 'test'),
        #'NAME': 'test',
        'USER': 'root',
        'PASSWORD': 'password',
        'HOST': 'localhost',
        'PORT': '3306',
    }}

Когда я запускаю 'python manage.py migrate' в терминале PyCharm, ничего не происходит, сообщение об ошибке отсутствует c. В указанной базе данных не создаются новые таблицы. Как вы видите, я попробовал две вещи для NAME.

MySQL Версия сервера 8.0.19 MySQL Connector / Python 8.0.19 Python версия 3.8 В PyCharm у меня есть пакет mysqlclient 1.4.6 установлены.

Любой совет, как найти проблему? Как получить сообщение об ошибке?

Спасибо

1 Ответ

1 голос
/ 22 марта 2020

DATABASES свойство указывает ваши конфигурации БД. Теперь NAME - это свойство, которое определяет имя вашей базы данных.

В настоящее время здесь 'NAME': os.path.join(BASE_DIR, 'test'), не будет работать, поскольку даст вам что-то вроде C:/YourUser/YourPath..., поэтому эта строка не является допустимым именем БД. basically (os.path.join() returns a path to your project directory)

Сначала создайте базу данных вручную на MySql, запишите имя и укажите его в свойстве как 'Name': DBNAME в SETTINGS.py.

(Убедитесь, что у вас настроена среда при выполнении следующих команд). Затем попробуйте python manage.py makemigrations для проверки изменений миграции, если до этого все идет хорошо, тогда запустите команду python manage.py migrate.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...