Django - 没有这样的表:main.auth_user__old

新手上路,请多包涵

我正在关注官方 Django 文档中的 第一个应用程序教程,并在尝试保存通过管理页面所做的一些更改时遇到此错误。我对此进行了一些研究,但我能够找到的可能解决方案(例如迁移数据库)根本行不通。如果您想查看我的代码的某些特定部分,请告诉我。

以下是错误:

OperationalError at /admin/polls/question/1/change/ no such table: main.auth_user__old 请求方法:POST 请求 URL:http: //127.0.0.1 :8000/admin/polls/question/1/change/ Django 版本: 2.1.4 异常类型:OperationalError 异常值:没有这样的表:main.auth_user__old 异常位置:/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/backends/sqlite3/base .py 在执行中,第 296 行 Python 可执行文件:/Users/gfioravante/Projects/test_app/ta_env/bin/python3 Python 版本:3.7.1 Python 路径:

[’/Users/gfioravante/Projects/test_app/test_app’, ‘/usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python37.zip’, ‘/usr/local /Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7’, ‘/usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/ lib/python3.7/lib-dynload’, ‘/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages’] 服务器时间:2018 年 12 月 5 日星期三 16:45:00 +0000

和回溯:

环境:

请求方式:POST 请求URL:http: //127.0.0.1 :8000/admin/polls/question/1/change/

Django 版本:2.1.4 Python 版本:3.7.1 安装的应用程序:[‘polls.apps.PollsConfig’, ‘django.contrib.admin’, ‘django.contrib.auth’, ‘django.contrib.contenttypes’, ‘django .contrib.sessions’, ‘django.contrib.messages’, ‘django.contrib.staticfiles’] 安装的中间件: [‘django.middleware.security.SecurityMiddleware’, ‘django.contrib.sessions.middleware.SessionMiddleware’, ‘django .middleware.common.CommonMiddleware’,’django.middleware.csrf.CsrfViewMiddleware’,’django.contrib.auth.middleware.AuthenticationMiddleware’,’django.contrib.messages.middleware.MessageMiddleware’,’django.middleware.clickjacking.XFrameOptionsMiddleware ‘]

追溯:

_execute 85 中的文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/backends/utils.py”。返回 self.cursor.execute(sql, params)

执行 296 中的文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/backends/sqlite3/base.py”。返回 Database.Cursor.execute(self, query,参数)

上述异常(没有这样的表:main.auth_user__old)是以下异常的直接原因:

内部文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/core/handlers/exception.py”。response = get_response(request)

文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/core/handlers/base.py”在_get_response 126.response = self.process_exception_by_middleware(e, request)

_get_response 124 中的文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/core/handlers/base.py”。response = wrapped_callback(request, *callback_args, **callback_kwargs)

包装器 604 中的文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/contrib/admin/options.py”。返回 self.admin_site.admin_view(view)(*args, **kwargs)

_wrapped_view 142 中的文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/utils/decorators.py”。response = view_func(request, *args, **kwargs)

文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/views/decorators/cache.py”在_wrapped_view_func 44.response = view_func(request, *args, **kwargs)

文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/contrib/admin/sites.py” inner 223.return view(request, *args, **kwargs)

change_view 1640 中的文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/contrib/admin/options.py”。return self.changeform_view(request, object_id, form_url, extra_context)

_wrapper 中的文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/utils/decorators.py”。返回 bound_method(*args, **kwargs)

_wrapped_view 142 中的文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/utils/decorators.py”。response = view_func(request, *args, **kwargs)

changeform_view 1525 中的文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/contrib/admin/options.py”。return self._changeform_view(request, object_id, form_url, extra_context)

_changeform_view 1571 中的文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/contrib/admin/options.py”。self.log_change(请求,new_object,change_message)

log_change 826 中的文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/contrib/admin/options.py”。change_message=message,

log_action 35 中的文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/contrib/admin/models.py”。change_message=change_message,

文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/models/manager.py” in manager_method 82. return getattr(self.get_queryset(), name)(* args, **kwargs)

创建文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/models/query.py”。obj.save(force_insert=True, using=self.db )

保存 718 中的文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/models/base.py”。force_update=force_update, update_fields=update_fields)

save_base 748 中的文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/models/base.py”。updated = self._save_table(raw, cls, force_insert, force_update , 使用, update_fields)

_save_table 831 中的文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/models/base.py”。result = self._do_insert(cls._base_manager, using, fields , update_pk, 原始)

_do_insert 869 中的文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/models/base.py”。using=using, raw=raw)

文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/models/manager.py” in manager_method 82. return getattr(self.get_queryset(), name)(* args, **kwargs)

_insert 1136 中的文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/models/query.py”。return query.get_compiler(using=using).execute_sql(return_id )

execute_sql 1289 中的文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/models/sql/compiler.py”。cursor.execute(sql, params)

执行 100 中的文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/backends/utils.py”。返回 super().execute(sql, params)

执行 68 中的文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/backends/utils.py”。返回 self._execute_with_wrappers(sql, params, many=False,执行者=自我._执行)

_execute_with_wrappers 中的文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/backends/utils.py”。返回执行器(sql、params、许多、上下文)

_execute 85 中的文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/backends/utils.py”。返回 self.cursor.execute(sql, params)

出口 89 中的文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/utils.py”。从 exc_value 提高 dj_exc_value.with_traceback(traceback)

_execute 85 中的文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/backends/utils.py”。返回 self.cursor.execute(sql, params)

执行 296 中的文件“/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/backends/sqlite3/base.py”。返回 Database.Cursor.execute(self, query,参数)

异常类型:OperationalError at /admin/polls/question/1/change/ 异常值:没有这样的表:main.auth_user__old

原文由 user10750522 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 985
2 个回答

轻松摆脱这个问题维护以下步骤:

  1. 保留 django 版本 2.1.5(此版本中解决的问题) pip install django==2.1.5
  2. 删除 SQLite 数据库
  3. 再次迁移 python manage.py makemigrations 然后 python manage.py migrate
  4. 启动服务器 python manage.py runserver

完毕!

原文由 nurealam siddiq 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题