首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >django向南迁移:仅重置几个表的模式

django向南迁移:仅重置几个表的模式
EN

Stack Overflow用户
提问于 2014-01-20 00:54:19
回答 1查看 73关注 0票数 0

我是新来的姜戈南迁。我有我的主应用程序以及作为主应用程序的子应用程序构建的该应用程序的大部分附加功能。现在我要做的是重置特定于主应用程序的子应用程序的表。我不想丢失其他表中的任何数据。

下面是我的数据库的样子:

代码语言:javascript
复制
 public | tos_agreement                       | table | g_db_admin
 public | tos_agreementversion                | table | g_db_admin
 public | tos_signature                       | table | g_db_admin
 public | userclickstream_click               | table | g_db_admin
 public | userclickstream_stream              | table | g_db_admin
 public | vote                                | table | g_db_admin
(80 rows)

我只想重建(转储的所有数据)

public | userclickstream_click | table | g_db_admin公共| userclickstream_stream | table | g_db_admin

我如何使用南迁移来实现这一点。

在我的south_migrationhistory表中,我有以下内容:

代码语言:javascript
复制
  15 | userclickstream   | 0001_initial                                                                | 2013-12-10 13:26:15.684678-06
  16 | userclickstream   | 0002_auto__del_field_stream_auth_user                                       | 2013-12-10 13:26:15.693485-06
  17 | userclickstream   | 0003_auto__del_field_stream_username__add_field_stream_user                 | 2013-12-10 13:26:15.721449-06

我假设这个记录是在我最初将它与南迁连接起来的时候发生的。

我也在想如果?从south_migrationhistory中删除上述记录,然后重新运行此应用程序的迁移,这将生成表。

代码语言:javascript
复制
./manage.py schemamigration userclickstream --initial
./manage.py migrate userclickstream
EN

回答 1

Stack Overflow用户

发布于 2014-01-20 01:01:50

这样做:

  1. 打开终端并编写manage.py dumpdata > backup.json。它将使用当前数据库中的所有数据创建一个json fixture。这样,如果你搞砸了什么,你总是可以用manage.py loaddata backup.json重新加载数据(注意,所有的表都需要是空的,这样才能使用前面提到的loaddata命令
  2. 编写你自己的迁移将数据传递到一个新的开发数据库,而不用担心破坏任何东西,因为-嘿,你有一个备份。这可能需要一些学习,但基本思想是创建一个具有两个函数的迁移类-正向和反向。看看south documentation,然后慢慢地拿起它。
  3. 带着您在此过程中遇到的任何更具体的问题和麻烦回到

这不是一个编码的“这就是解决方案”的答案,但我希望这会有所帮助

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

https://stackoverflow.com/questions/21219683

复制
相关文章

相似问题

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