简而言之:如何在 Django 模型中指定 BIGINT?
在我使用 Django(0.97-svn 版本)进行的当前项目中,我将所有模型中的所有整数字段都定义为 IntegerField。在我将 SQLite 用于数据库后端的开发周期中,它完美无缺地工作。然而,当我转而使用 MySQL 时,我注意到对于其中一个 IntegerFields,MySQL 正在截断数据——显然,出于我仍然不知道的原因,SQLite 没有提示。我查看了架构,发现 Django 中的 IntegerField 在 MySQL 中表示为 INT(11) 字段。自然,MySQL 截断数据的原因是因为数据长度超过 11 位。要解决此问题,我必须手动将列更新为 BIGINT(20)。 Django 和 MySQL 与之和平共处。但是每当我重置包含该 BIGINT 模型的应用程序时,Django 再次将其创建为 INT(11)。我看过 Django 文档,但没有找到任何东西。我是否忽略了什么?
谢谢。
最佳答案
BigIntegerField添加到变更集 11887, 2009-12-17 09:10:38 并且是 Django 1.2 及更新版本的一部分。
关于mysql - Django 模型中的大整数字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/283724/