python migrate.py сбой команды в django

#python #django

Вопрос:

Я пытаюсь настроить свою среду с помощью кода VS, и я заметил, что при запуске python manage.py команда переноса Я получаю следующие ошибки. Это странно, потому что проект новый, из исследования, которое я провел, я заметил, что некоторые люди получали ошибку, потому что они изменили некоторые файлы и т.д., В моем случае я не изменил ни одного файла. это новый чистый проект.

Все, что я сделал, это удалил базу данных sqllite по умолчанию и заменил ее конфигурацией базы данных SQL server. Я заметил, что создается 2 таблицы, то есть django_content_type и django_migrations, затем процесс завершается неудачно, можно ли получить какие-то подробные журналы, чтобы узнать, в чем проблема ?

Сведения об ошибке, которые у меня есть, приведены ниже.

 (env) PS C:UsersUserDocumentsdjangofeaturedjangodeployment_reportingreporting_project> python manage.py makemigrations        
No changes detected
(env) PS C:UsersUserDocumentsdjangofeaturedjangodeployment_reportingreporting_project> python manage.py migrate
Operations to perform:
  Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
  Applying contenttypes.0001_initial...Traceback (most recent call last):
  File "C:UsersUserDocumentsdjangofeaturedjangodeployment_reportingreporting_projectmanage.py", line 22, in <module>
    main()
  File "C:UsersUserDocumentsdjangofeaturedjangodeployment_reportingreporting_projectmanage.py", line 18, in main
    execute_from_command_line(sys.argv)
  File "C:UsersUserDocumentsdjangofeaturedjangodeployment_reportingenvlibsite-packagesdjangocoremanagement__init__.py", line 419, in execute_from_command_line
    utility.execute()
  File "C:UsersUserDocumentsdjangofeaturedjangodeployment_reportingenvlibsite-packagesdjangocoremanagement__init__.py", line 413, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "C:UsersUserDocumentsdjangofeaturedjangodeployment_reportingenvlibsite-packagesdjangocoremanagementbase.py", line 354, in run_from_argv
    self.execute(*args, **cmd_options)
  File "C:UsersUserDocumentsdjangofeaturedjangodeployment_reportingenvlibsite-packagesdjangocoremanagementbase.py", line 398, in execute
    output = self.handle(*args, **options)
  File "C:UsersUserDocumentsdjangofeaturedjangodeployment_reportingenvlibsite-packagesdjangocoremanagementbase.py", line 89, in wrapped
    res = handle_func(*args, **kwargs)
  File "C:UsersUserDocumentsdjangofeaturedjangodeployment_reportingenvlibsite-packagesdjangocoremanagementcommandsmigrate.py", line 244, in handle
    post_migrate_state = executor.migrate(
  File "C:UsersUserDocumentsdjangofeaturedjangodeployment_reportingenvlibsite-packagesdjangodbmigrationsexecutor.py", line 117, in migrate
    state = self._migrate_all_forwards(state, plan, full_plan, fake=fake, fake_initial=fake_initial)
  File "C:UsersUserDocumentsdjangofeaturedjangodeployment_reportingenvlibsite-packagesdjangodbmigrationsexecutor.py", line 147, in _migrate_all_forwards
    state = self.apply_migration(state, migration, fake=fake, fake_initial=fake_initial)
  File "C:UsersUserDocumentsdjangofeaturedjangodeployment_reportingenvlibsite-packagesdjangodbmigrationsexecutor.py", line 227, in apply_migration
    state = migration.apply(state, schema_editor)
  File "C:UsersUserDocumentsdjangofeaturedjangodeployment_reportingenvlibsite-packagesdjangodbmigrationsmigration.py", line 126, in apply
    operation.database_forwards(self.app_label, schema_editor, old_state, project_state)
  File "C:UsersUserDocumentsdjangofeaturedjangodeployment_reportingenvlibsite-packagesdjangodbmigrationsoperationsmodels.py", line 528, in database_forwards     
    alter_together(
  File "C:UsersUserDocumentsdjangofeaturedjangodeployment_reportingenvlibsite-packagessql_serverpyodbcschema.py", line 156, in alter_unique_together
    self.execute(sql)
  File "C:UsersUserDocumentsdjangofeaturedjangodeployment_reportingenvlibsite-packagessql_serverpyodbcschema.py", line 861, in execute
    sql = str(sql)
  File "C:UsersUserDocumentsdjangofeaturedjangodeployment_reportingenvlibsite-packagesdjangodbbackendsddl_references.py", line 201, in __str__
    return self.template % self.parts
KeyError: 'include'
 

Я добавил следующее в свой файл настроек.

 DATABASES = {
    'default': {
        'ENGINE': 'sql_server.pyodbc',
        'NAME': 'django_reporting',
        'HOST': 'DESKTOP-OIDEV2',
        'PORT': '',
        'OPTIONS': {
            'driver': 'ODBC Driver 17 for SQL Server',
        },
    },
} 
 

Комментарии:

1. Какую версию Django вы используете?

Ответ №1:

Я нашел другой ответ на эту проблему откуда-то еще, дайте мне знать, если это поможет c:

«Я следую:

удалите это с помощью pip удалите django-pyodbc или pip3 удалите django-pyodbc (для Linux)

установите это с помощью pip удаление django-pyodbc-azure-2019 или pip3 удаление django-pyodbc-azure-2019 (для Linux)

Моя проблема решена, и я надеюсь, что после этого ваше приложение будет работать бесперебойно. 🙂 »

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

Ответ №2:

Благодаря ruffishkimbr в его ответе была опечатка и для того, чтобы никого не смущать. Я публикую здесь то, что я сделал. Во-первых, я запускаю django версии 3.2.6

что я сделал, так это последовал инструкциям раффишкимбра. Удалите pyodby, запустив

 python -m pip uninstall pyodbc  

 
 

Затем установил django-pyodbc-azure-2019, запустив

 python -m pip install django-pyodbc-azure-2019