总而言之:当我安装django时,它会附带我过去删除的迁移。
以下是我的工作:
$ mkvirtualenv foo
$ (foo) pip install django
Collecting django
Using cached Django-1.11.5-py2.py3-none-any.whl
Collecting pytz (from django)
Using cached pytz-2017.2-py2.py3-none-any.whl
Installing collected packages: pytz, django
Successfully installed django-1.11.5 pytz-2017.2
现在,当我查看创建venv的目录时,我可以看到默认django应用程序(管理员,用户等)中的迁移。我还看到了一个全新项目中的迁移。
尝试重置迁移后,问题就出现了。我从每个应用程序中删除了迁移并删除了所有表。然后我删除了venv中的迁移,同时这样做我不小心删除了一个django应用程序。丢失的应用程序迫使我卸载并安装django。
即使我告诉pip不使用缓存--no-cache-dir
,我仍然可以进行迁移。
答案 0 :(得分:2)
这是设计的。 Django附带的默认应用程序需要这些迁移创建的表。
如果您不需要这些应用,请将其从INSTALLED_APPS
中的settings.py
移除。