Я столкнулся с этим в двух случаях (обновлено 13.06.2012):
Первое:
Я еще не перенес свою тестовую базу данных ...
rake db:migrate
... что вам нужно сделать, прежде чем db:test:prepare
и db:test:load
.
Когда вы вызываете rspec, он должен prepare
и load
вашБаза данных для вас в любом случае.Вам не нужно делать это вручную.
Второе:
Опечатка в моей миграции.Я случайно изменил имена своих таблиц и столбцов в списке параметров.
Миграция в проекте Rails 3.1:
def change
add_column :had_import_errors, :studies, :boolean, :default => false
add_column :import_data_cache, :studies, :text
end
... что неправильно , потому чтоhas_import_errors
и import_data_cache
являются именами моих столбцов, и поэтому они должны стоять на втором месте, а не на первом.
Правильная миграция с первым именем таблицы:
def change
add_column :studies, :had_import_errors, :boolean, :default => false
add_column :studies, :import_data_cache, :text
end