Heroku DB: проблемы толчка - PullRequest
       3

Heroku DB: проблемы толчка

1 голос
/ 12 сентября 2011

Я прочитал кучу постов и погуглил, но не могу найти набор вещей для проверки, чтобы решить следующую ошибку, когда я делаю:

heroku db:push

Я прочитал этоответ: Миграция Rails по существующей базе данных

Но это не решает проблему, с которой я столкнулся.В настоящее время я получаю следующую ошибку:

messages:      100% |==========================================| Time: 00:00:00
numbers:         0% |                                          | ETA:  --:--:--
Saving session to push_201109120849.dat..
!!! Caught Server Exception
HTTP CODE: 500
Taps Server Error: PGError: ERROR:  integer out of range

И моя миграция номеров выглядит следующим образом:

class CreateNumbers < ActiveRecord::Migration
  def self.up
    create_table :numbers do |t|
      t.integer :inbound_num
      t.boolean :assigned

      t.timestamps
    end
  end

  def self.down
    drop_table :numbers
  end
end

Я использую целочисленный тип данных для сохранения номеров мобильных телефонов.Я не уверен, что это хорошая идея, прочитав это: Какой тип данных следует использовать для хранения телефонных номеров в SQL Server 2005?

Дело в том, что данные отлично работают локально, поэтому я нене думаю, что я выбрал ужасный тип данных.

Числа в БД, которые я нажимаю, выглядят так:

447786201383

447786201387

447786201389 и т. Д. *

Заранее большое спасибо!

1 Ответ

1 голос
/ 12 сентября 2011

В вашей миграции у вас есть что-то вроде

t.integer :field

Но по умолчанию для Postgresql, который используется на heroku, установлено 4 байта

Так что вы должны изменить свои целые числа для bigints.

Для этого используйте :limit.Пример:

t.integer :field, :limit => 8
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...