首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何用django-south恢复丢弃的表?

如何用django-south恢复丢弃的表?
EN

Stack Overflow用户
提问于 2011-03-17 00:01:03
回答 5查看 7.5K关注 0票数 21

我想在我的数据库中清除一个表,所以我删除了这个表。通常我会执行manage.py syncdb来重新创建它。然而,here的回答是不再使用syncdb。那么,我该怎么做呢?

EN

回答 5

Stack Overflow用户

发布于 2012-11-24 00:12:39

这是一个相当晚的回应,但对于那些会遇到同样问题的人(就像我一样)。

通常,要删除由south管理的应用程序的db_tables,您应该使用:

代码语言:javascript
复制
python manage.py migrate appname zero

但是如果你手动将它们放到数据库中,让south知道这一点。

代码语言:javascript
复制
python manage.py migrate appname zero --fake

当然,还要重新创建这些表

代码语言:javascript
复制
python manage.py migrate appname
票数 40
EN

Stack Overflow用户

发布于 2011-08-26 09:46:53

也有同样的问题。不确定这是否在所有情况下都有效,但以下是我所做的:

在INSTALLED_APPS

  • run

  • manage.py

中,从INSTALLED_APPS

  • run manage.py migrate

中将"south“注释掉”

瞧!

您的里程可能会有所不同...

票数 27
EN

Stack Overflow用户

发布于 2011-03-17 00:15:49

嗯,this exchange回答了我的问题:

如果你手动修改数据库,South不会注意到-它跟踪数据库版本的唯一方法是south_migrationhistory表,所以如果你在背后摆弄它,你有责任修复它。

我最后做的是注释掉我放在那里的模型,做一个schemamigration,创建一个空的无列表(所以South有东西要放),migrateing,然后取消对模型的注释,schemamigrationmigrateing。比起丢掉桌子和syncdb,这有点烦人,但是,好吧。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5328053

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档