在 Django 中将所有表删除到 运行 syncdb 的最简单方法?
Easiest way to drop all tables to run syncdb in Django?
我一直在对我的 Django 模型进行微小的更改。我不关心我不断添加的测试数据,我只想删除所有 tables(模型)以便我可以再次 运行 syncdb
。 manage.py flush
不会删除 table 架构,它只会删除数据。
Django 1.6 中是否有更快的函数来删除所有 tables?
1) Django 1.6 是一个不受支持的 Django 版本 https://www.djangoproject.com/download/#supported-versions
你可以看到 Django 1.6 一直支持到 2015 年 4 月。所以现在尝试迁移到 1.8 LTS 或 1.9,并在你的 Django 项目中进行迁移,或者将 South 集成到你的旧 Django 应用程序中进行迁移 http://south.readthedocs.org/en/latest/index.html
2) 不,在 Django 1.6(django-admin/manage.py 命令)中没有更快的函数可以删除所有表。这个旧版本中更接近的是:
manage.py sqlclear appname
并将输出放入您的 sql shell,也许可以使用管道。
manage py sqlclear appname | manage.py dbshell
至少与 MySQL 一起工作得很好。
我一直在对我的 Django 模型进行微小的更改。我不关心我不断添加的测试数据,我只想删除所有 tables(模型)以便我可以再次 运行 syncdb
。 manage.py flush
不会删除 table 架构,它只会删除数据。
Django 1.6 中是否有更快的函数来删除所有 tables?
1) Django 1.6 是一个不受支持的 Django 版本 https://www.djangoproject.com/download/#supported-versions
你可以看到 Django 1.6 一直支持到 2015 年 4 月。所以现在尝试迁移到 1.8 LTS 或 1.9,并在你的 Django 项目中进行迁移,或者将 South 集成到你的旧 Django 应用程序中进行迁移 http://south.readthedocs.org/en/latest/index.html
2) 不,在 Django 1.6(django-admin/manage.py 命令)中没有更快的函数可以删除所有表。这个旧版本中更接近的是:
manage.py sqlclear appname
并将输出放入您的 sql shell,也许可以使用管道。
manage py sqlclear appname | manage.py dbshell
至少与 MySQL 一起工作得很好。