ruby – 数量超出了ActiveRecord :: Type :: Integer,限制为4

我在我的 Ruby应用程序中使用SQLite ActiveRecord,并且在尝试将一个大数字写入整数字段时,我遇到错误:

1428584647765 is out of range for ActiveRecord::Type::Integer with
limit 4

但是根据SQLite文档:

The value is a signed integer,stored in 1,2,3,4,6,or 8 bytes depending on the magnitude of the value.

8字节是大量的空间存储1428584647765号码,那为什么ActiveRecord给我一个错误?为什么它认为这是一个4字节的字段?

解决方法

美好的一天.
默认情况下,使用len = 32字节创建columnt

为了改变这个,你可以创建迁移,例如:

t.integer :some_field,:limit => 8

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...