Миграция и миграция Django

#python #django

#python #django

Вопрос:

У меня возникли проблемы с командой py manage.py makemigrations [project_name] and py manage.py migrate . Каждый раз, когда я пытаюсь выполнить эти две команды в правильном порядке, я получаю следующую ошибку:

 Traceback (most recent call last):
  File "C:UsersGilbertPycharmProjectsGGprojectsdjangomanage.py", line 20, in <module>
    main()
  File "C:UsersGilbertPycharmProjectsGGprojectsdjangomanage.py", line 17, in main
    execute_from_command_line(sys.argv)
  File "C:UsersGilbertPycharmProjectsGGprojectsdjangoll_envlibsite-packagesdjangocoremanagement__init__.py", line 371, in execute_from_command_line
    utility.execute()
  File "C:UsersGilbertPycharmProjectsGGprojectsdjangoll_envlibsite-packagesdjangocoremanagement__init__.py", line 365, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "C:UsersGilbertPycharmProjectsGGprojectsdjangoll_envlibsite-packagesdjangocoremanagementbase.py", line 301, in run_from_argv
    connections.close_all()
  File "C:UsersGilbertPycharmProjectsGGprojectsdjangoll_envlibsite-packagesdjangodbutils.py", line 225, in close_all
    connection.close()
  File "C:UsersGilbertPycharmProjectsGGprojectsdjangoll_envlibsite-packagesdjangodbbackendssqlite3base.py", line 190, in close
    if not self.is_in_memory_db():
  File "C:UsersGilbertPycharmProjectsGGprojectsdjangoll_envlibsite-packagesdjangodbbackendssqlite3base.py", line 287, in is_in_memory_db
    return self.creation.is_in_memory_db(self.settings_dict['NAME'])
  File "C:UsersGilbertPycharmProjectsGGprojectsdjangoll_envlibsite-packagesdjangodbbackendssqlite3creation.py", line 13, in is_in_memory_db
    return database_name == ':memory:' or 'mode=memory' in database_name
TypeError: argument of type 'WindowsPath' is not iterable
  

Глядя на ошибку, я бы сказал, что, возможно, мой ПУТЬ к Python неверен. Текущий путь для него таков C:UsersGilbertAppDataRoamingMicrosoftWindowsStart MenuProgramsPython 3.9 . В этом причина ошибки? И повлияет ли это на мой проект Django? Кроме того, как я могу решить эту проблему?

Ответ №1:

Похоже, что он не получает путь к базе данных. проверьте имя вашей базы данных в settings.py досье.

Например: для sqlite3 это должно быть похоже :

 DATABASES = {
    'default': {
    'ENGINE': 'django.db.backends.sqlite3',
    'NAME': str(os.path.join(BASE_DIR, "db.sqlite3"))
   }
 }
  

если это не работает для вас, пожалуйста, поделитесь своими настройками базы данных здесь, чтобы я мог помочь