Aquí está el conjuro mágico en tu migración cuando declaras la columna:
create_table :example do |t|
t.integer :field, :limit => 8
end
El :limit => 8 es la magia en este caso, ya que postgres solo hace enteros de 4 bytes con signo cuando solo dices entero. Esto usa enteros con signo de 8 bytes.