【问题标题】:How to determine the maximum integer the model can handle?如何确定模型可以处理的最大整数?
【发布时间】:2010-03-18 13:31:01
【问题描述】:

“这个应用实例可以处理的模型字段的最大整数是多少?”

我们有 sys.maxint,但我正在寻找数据库+模型实例。我们有 IntegerField、SmallIntegerField、PositiveSmallIntegerField 和其他几个。它们都可能因彼此和每种数据库类型而异。

我在 stackoverflow 上找到了“IntegerRangeField”自定义字段示例。可能不得不使用它,并猜出最小的公分母?或者重新考虑我认为的设计。

有没有一种简单的方法可以计算出 IntegerField 或其变体可以处理的最大整数?

【问题讨论】:

    标签: django django-models


    【解决方案1】:

    这取决于您的数据库后端。

    使用./manage.py sql your_app_name 检查为您的 DB 列生成的类型,并查看您的数据库文档以了解类型范围。

    对于 MySQL:http://dev.mysql.com/doc/refman/5.1/en/numeric-types.html

    对于 PostgreSQL:http://www.postgresql.org/docs/8.1/static/datatype.html#DATATYPE-TABLE

    【讨论】:

      【解决方案2】:

      不容易做到。只需设置一个常量并使用它。

      MAX_SMALL_INT = 32767
      
      position = models.PositiveSmallIntegerField(default=MAX_SMALL_INT)
      

      【讨论】:

        猜你喜欢
        • 2013-06-04
        • 2017-07-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-08-17
        • 2021-03-09
        • 2017-10-02
        • 1970-01-01
        相关资源
        最近更新 更多