问题标签 [django-south]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
10 回答
61338 浏览

python - 在现有 Django 应用程序中更改主键的最佳方法是什么?

我有一个处于 BETA 模式的应用程序。这个应用程序的模型有一些具有显式主键的类。因此 Django 使用这些字段并且不会自动创建一个 id。

我认为这是一个坏主意(请参阅在 django admin 中保存对象时出现 unicode 错误),我想返回并为我的模型的每个类设置一个 id。

我已经对我的模型进行了更改(将每个 primary_key=True 替换为 db_index=True),并且我想用south迁移数据库。

不幸的是,迁移失败并显示以下消息: ValueError: You cannot add a null=False column without a default value.

我正在评估针对此问题的不同解决方法。有什么建议么?

谢谢你的帮助

0 投票
2 回答
3732 浏览

django - Django South 数据迁移运行两次

我有一个迁移:

但是当我运行 migrate 时,它​​会运行两次循环。

0 投票
3 回答
184 浏览

python - 如何在 syncdb 之后将 Admin 类添加到模型中?

我在我的 models.py 中添加了一些模型,我想添加一个管理类以在文本字段中使用所见即所得的编辑器。
好吧,我知道 Django 本身不支持迁移,而且我使用过 South,但它也不起作用。
南方没有“看到”这种变化。
有没有可能,South 只是检测到字段的更改,但如果我添加一个新类则不会?
如何调整 Django 以检测此类更改?

0 投票
5 回答
3268 浏览

java - 数据库模式更改的 Java 等效项,例如 Django 的 South?

我一直在使用 South 开发 Django 项目来跟踪和管理数据库架构更改。我正在使用 Google Web Toolkit 开始一个新的 Java 项目,并想知道是否有等效的工具。对于那些不知道的人,这是 South 所做的:

  • 自动识别对我的 Python 数据库模型的更改(添加/删除列、表等)
  • 自动创建 SQL 语句以将这些更改应用到我的数据库
  • 跟踪应用的架构迁移并按顺序应用它们
  • 允许使用 Python 代码进行数据迁移。例如,使用 Python split() 函数将名称字段拆分为名字和姓氏字段

我还没有决定我的 Java ORM,但是 Hibernate 看起来是最流行的。对我来说,轻松更改数据库架构的能力将是一个重要因素。

0 投票
1 回答
738 浏览

django - Django 1.2 和南方问题

我使用的是 python 2.5 和 django 1.0.2。但我最近搬到了 python 2.6 和 django 1.2,现在在迁移过程中出现以下错误:

多次运行 migrate 后,最终通过。我有 5 个不同的应用程序正在迁移,我认为这可能是依赖关系问题。但我没有调用其他应用程序的迁移。那么可能是什么问题?

问候,阿尔沙夫斯基亚历山大。

0 投票
3 回答
557 浏览

python - Django 迁移——是否可以在项目中间使用 South?

我已经开始了一个项目,模型都同步了。

0 投票
1 回答
838 浏览

django - Django South外键引用带有自定义字段的pks

我正在使用一个使用 MySQL big int 的遗留数据库,所以我设置了一个简单的自定义模型字段来处理这个问题:

这适用于 django south 的 id/pk 字段 (mysql desc "| id | bigint(20) | NO | PRI | NULL | auto_increment |") 但其他模型中的 ForeignKey 字段引用字段创建为 int(11 ) 而不是 bigint(20)。

我假设我必须向 BigAutoField 添加一个自省规则,但文档中似乎没有提到这种规则(http://south.aeracode.org/docs/customfields.html)。

更新:目前使用 Django 1.1.1 和 South 0.6.2

更新 2: 似乎 Django 代码负责。

来自 django.db.models.fields.related.ForeignKey.db_type():

当我重载 AutoField 时,isinstance 返回 True,它默认为 IntegerField。猜猜我将不得不复制 AutoField 代码并这样做。. .

0 投票
1 回答
714 浏览

python - django + south + python:在函数中使用作为参数接收的文本字符串时的奇怪行为

这是我的第一个问题。

我正在尝试在 django 中执行 SQL 查询(南迁移):

我像这样使用这个功能:

所以它应该:

  1. 找到最大的现有 ID 或 0(它崩溃)
  2. 创建序列名称
  3. 创建序列
  4. 更新 ID 字段以使用序列
  5. 将 ID 更新为 PK

但它崩溃了,错误说:

为了方便起见,我缩短了文件路径。

“E'accounting_delegation'”是什么意思?我怎么能摆脱它?

谢谢!

卡洛斯。

0 投票
1 回答
2042 浏览

python - South/Django 的问题:无法识别 Django App

我的机器上有一个 Django 项目,当我尝试使用 South 迁移数据模式时,出现了几个奇怪的错误。例子:

$ python manage.py convert_to_south thisLocator

/Library/Python/2.6/site-packages/registration/models.py:4:弃用警告:sha >模块已弃用;改用 hashlib 模块 import sha /Users/cm/code/thisLocator/../thisLocator/batches/models.py:6: DeprecationWarning: the md5 >module is deprecated; 使用 hashlib 代替 import md5

没有与“thisLocator”匹配的已启用应用程序。

我遵循了南方的文档。Settings.py 在已安装的应用程序中有它,我可以从 manage.py shell 运行 import south。我团队中的其他人都在调用这个应用程序 thisLocator。

我做的事情真的很愚蠢吗?

0 投票
3 回答
1248 浏览

python - Django 1.2 + South 0.7 + django-annoying 的 AutoOneToOneField 导致 TypeError: 'LegacyConnection' object is not iterable

我正在使用带有 South 0.7 的 Django 1.2 主干和从 django-annoying 复制的 AutoOneToOneField。South 抱怨该字段没有定义规则,并且新版本的 South 不再具有自动字段类型解析器。因此,我阅读了 South 文档并编写了以下定义(基本上是 OneToOneField 规则的精确副本):

现在,当我进行架构迁移时,South 会引发以下错误。

这与 Django 1.2 主干的最近变化有关吗?我该如何解决?

我使用这个字段如下:

参考来自 django-tagging 的字段代码: