【问题标题】:Maintaining content type pk integrity in a Django deployment在 Django 部署中维护内容类型 pk 的完整性
【发布时间】:2011-02-07 14:32:23
【问题描述】:

当你在 Django 中运行 syncdb 时,内容类型的主键将被重新计算。如果我创建新模型,下次运行syncdb时,内容类型的主键会不同。

如果我有一个在生产中运行的应用程序,我如何使用新模型更新数据库并保持内容类型 pks 的完整性?

【问题讨论】:

    标签: django deployment django-models production-environment


    【解决方案1】:

    运行syncdb 不会更新现有的 ContentType 值 - 这些值存储在数据库中并且不会更改。所以依赖他们的关系不会受到影响。

    但是,当您运行 syncdb 时,新定义的模型将获得新的 ContentType 值,目前无法提前定义这些值是什么。正如 Ludwik 指出的,这个问题在 1.2 中得到了解决。

    【讨论】:

      【解决方案2】:

      这个问题在 Django 1.2(应该在两周内发布)中通过natural keys 解决。

      【讨论】:

      • 如果你也在运行 django 主干,它已经修复了。
      猜你喜欢
      • 1970-01-01
      • 2010-09-24
      • 1970-01-01
      • 2011-11-26
      • 2011-06-15
      • 2012-02-26
      • 2014-12-09
      • 1970-01-01
      • 2019-04-20
      相关资源
      最近更新 更多