Миграции Rails думают, что я пытаюсь изменить таблицу с именем символ или строка в зависимости от моего использования синтаксиса .... ПОЧЕМУ? - PullRequest
0 голосов
/ 23 августа 2011

Итак, у меня есть строка миграции:

  add_column :users, :account_id, :integer

, которая выдает ошибку:

SQLite3::SQLException: no such table: symbols: ALTER TABLE "symbols" ADD "account_id" integer

Но когда я делаю

  add_column "users", "account_id", "integer" #changed everything to strings

, я получаюпохожая ошибка

SQLite3::SQLException: duplicate column name: account_id: ALTER TABLE "strings" ADD "account_id" integer

ПРИМЕЧАНИЕ:
• не имеет значения, использую ли я скобку add_column (add_column (args)).
• нигде в какой-либо из моих миграций в I когда-либоупомянуть любые таблицы, которые могут быть названы «строки» или «символы»

Итак, похоже, что независимо от типа объекта таблицы, которую я пытаюсь изменить, он ошибочно думает, что я хочу изменить таблицуназван в честь этого типа объекта.= \

В соответствии с http://api.rubyonrails.org/classes/ActiveRecord/Migration.html мой синтаксис правильный.

Эти миграции работают на другой машине, поэтому это проблема среды.

Яиспользуя Mac OS X lion.
Ruby 1.8.7
Rails 2.3.8
Rake 0.8.7

EDIT (по запросу): Миграция: http://pastebin.com/xhwP8TFy

1 Ответ

1 голос
/ 23 августа 2011

Итак, поскольку в Stackoverflow есть глупые правила, я должен использовать две разные учетные записи.

Узнал, что это из-за того, как я расширил класс "объект". В конфиге / инициализаторах у меня было несколько методов объекта.

И, видимо, был конфликт. Хотя он никогда ничего мне об этом не говорил.

Так что ... Не расширяйте объект в этой папке, я думаю.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...