我一直在寻找答案,但我找不到。在PostgreSQL中,我有一个主键,它是自动字段,是BigInt类型。在url路径中,我必须用 "int:pk "来引用它。如果我用int来做这个用途,我以后会不会遇到麻烦,因为数字会超过整数类型的限制?url中的bigint用哪种类型比较好?Django的Bigint类型中没有BigInt和BigIntegerField。我是否要用<'$>这样的模式来代替int?谢谢你的帮助!
你在 python 中可以使用 int 类型,因为在 python 3.x 中,整数的值不受位数限制,可以扩展到可用内存的极限。对于Python2.x来说情况有点不同,但对你来说还是安全的。请看下面文档中的引文。
Python 2.7:
普通整数 (也就是整数) 在 C 语言中使用 long 来实现,这使得它们至少有 32 位的精度。
https:/docs.python.org2.7librarystdtypes.html#numeric-types-int-float-long-complex。
因此,对于python 2.X来说,范围是从 -9223372036854775808
到 9223372036854775807
(只要能存储到64位)
Python 3.x:
整数具有无限精度。
https:/docs.python.org3librarystdtypes.html#numeric-types-int-float-complex。
对于 PostGreSQL BigInt 最多可以存储8个字节,这和python2.x一样,因此完全可以放心的进行python int到PostGreSQL BigInt的映射。