开发者

How to determine the maximum integer the model can handle?

"What is the biggest integer the model field that this application instance can handle?"

We have sys.maxint, but I'm looking for the database+model instance. We have the IntegerField, the SmallIntegerField, the PositiveSmallIntegerField, and a coupl开发者_运维知识库e of others beside. They could all vary between each other and each database type.

I found the "IntegerRangeField" custom field example here on stackoverflow. Might have to use that, and guess the lowest common denominator? Or rethink the design I suppose.

Is there an easy way to work out the biggest integer an IntegerField, or its variants, can cope with?


It depends on your database backend.

Use ./manage.py sql your_app_name to check generated types for your DB-columns, and look through your database documentation for type ranges.

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

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


Can't be easily done. Just set a constant and use that.

MAX_SMALL_INT = 32767

position = models.PositiveSmallIntegerField(default=MAX_SMALL_INT)
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜