关于向现有表添加整数列,我遇到了Heroku的问题。
以下是我设置迁移文件的方法:
class AddFieldsToNetwork < ActiveRecord::Migration
def self.up
add_column :networks, :phone, :integer, :limit => 10
add_column :networks, :contact, :string
end
def self.down
remove_column :networks, :phone
remove_column :networks, :contact
end
end
现在这可以在本地运行,但是当我推送到Heroku时,我会得到大多数人得到的结果:
!!! Caught Server Exception
HTTP CODE: 500
Taps Server Error: PGError: ERROR: integer out of range
如果我将:integer
更改为:string
,那么在Heroku上添加列的功能和功能都很棒。如果我将其保留在:integer
下,则:network
模型会在我创建新的“网络”时崩溃。
谁能告诉我自己可能做错了什么?
答案 0 :(得分:1)
:limit - 请求最大列长度。这是以下字符数:string和:text列以及:binary和:integer列的字节数。
对于手机你绝对使用字符串,原因是你的意思是10个字符。不是数字的字节