如何完全重置我的 Django(1.2 alpha)数据库(删除所有表而不是只清除它们)?
manage.py flush
功能过于简单(如果有模式更改则无法工作),而 manage.py reset
需要我指定所有应用程序(似乎需要一个与 " ".join(INSTALLED_APPS) 不同的格式)。显然,我可以以特定于数据库的方式实现此目的,但我想必须有一种明智、不受 DB 后端影响的方法来实现这一点。
[编辑:我正在寻找可以从脚本(如 Makefile)调用并且在更改后端 DB 或添加到 settings.INSTALLED_APPS
时仍然可用的解决方案。]
pip install django-extensions
,然后运行python manage.py reset_db
。 - abstraktorpython manage.py reset_db
命令之前,您需要在项目中启用 django_extensions 插件,将其添加到项目的 settings.py 文件的 INSTALLED_APPS 列表中:INSTALLED_APPS = ( ... 'django_extensions', ... )
查看文档 - Gengiolo