修复错误:django.db.utils.OperationalError:没有这样的表:auth_group
我正在尝试使用命令python manage.py test运行一些简单的测试 当我这样做的时候,我得到的错误是 文件“/Users/petka/.local/share/virtualenvs/movie_platform-wu-Kht1X/lib/python3.6/site packages/django/db/backends/sqlite3/base.py”,第394行,在execute中 返回Database.Cursor.execute(self,query) django.db.utils.OperationalError:没有这样的表:auth_组 有人知道怎么解决这个问题吗 电影\u app/tests.py修复错误:django.db.utils.OperationalError:没有这样的表:auth_group,django,testing,Django,Testing,我正在尝试使用命令python manage.py test运行一些简单的测试 当我这样做的时候,我得到的错误是 文件“/Users/petka/.local/share/virtualenvs/movie_platform-wu-Kht1X/lib/python3.6/site packages/django/db/backends/sqlite3/base.py”,第394行,在execute中 返回Database.Cursor.execute(self,query) django.db.
from django.test import TestCase
class SmokeTest(TestCase):
def test_bad_maths(self):
self.assertEqual(1 + 1, 3)
你迁移了吗?
如果没有,则运行以下命令
我尝试删除我的db.sqlite3,migrations&pycache文件夹,然后运行makemigrations,syncdb…等等,正如几篇文章所建议的那样,但它抛出了完全相同的错误,
sqlite3.OperationalError:没有这样的表:auth_group
以下是对我有效的方法:注释url.py和admin.py中的所有内容,运行makemigrations&migrate
详情:
注释出urls.py,然后运行makemigrations会引发相同的错误,但在回溯中,它指向admin.py中的一行代码,该代码试图访问或创建数据库中的新实例。然后,我在admin.py中注释掉了所有内容,并在pipenv中重新运行了
/manage.py makemigrations
&/manage.py migrate
,它成功了!当我这样做的时候,migrations文件夹就存在了(在其他尝试解决问题时将其删除后从git中取出),所以我猜没有必要删除它。我的修复方法是在用于测试的数据库中执行迁移。出于某种原因,您需要对其进行更新,即使它会重新创建所有内容。您找到修复方法了吗?我有完全相同的错误,但auth_组在我的代码中没有位置。