2013-03-19 2 views
1

Я создаю существующее приложение rails на новых рабочих станциях. Когда я пытаюсь rake db:migrate, я получаю эту странную ошибку прежде, чем любая попытка даже создать первую таблицу (да, я начал с rake db:create):Невозможно выполнить грабли миграции: Mysql2 :: Ошибка: таблица не существует

$ bundle exec rake db:migrate 
rake aborted! 
Mysql2::Error: Table 'myapp_dev.usage_roles' doesn't exist: SHOW FULL FIELDS FROM `usage_roles` 
# ... followed by a long stack trace 

Я не могу догадаться, почему задача рек пытается показать поля от любой таблицы до того, как она должна существовать. Я даже не вижу упоминания этой таблицы в приложении. Вот полный grep:

$ grep -r usage_roles . 
Binary file ./.git/index matches 
./app/models/usage/role.rb: self.table_name = 'usage_roles' 
./app/models/usage/user.rb: where(" usage_roles.name in (?)", Usage::Role::SUPPORT_ROLES) 
./coverage/index.html:   <code class="ruby"> self.table_name = 'usage_roles'</code> 
./coverage/index.html:   <code class="ruby"> where(&quot; usage_roles.name in (?)&quot;, Usage::Role::SUPPORT_ROLES)</code> 
./db/migrate/20130112104233_create_usage_roles.rb: execute('CREATE VIEW usage_roles AS SELECT 
./db/migrate/20130112104233_create_usage_roles.rb:   * FROM clu_enums.usage_roles;') 
./db/migrate/20130112104233_create_usage_roles.rb: execute('DROP VIEW IF EXISTS usage_roles;') 
+0

ли какой-либо из миграции любой SQL, встроенные в них, или они все «чистые» рельсы миграции? –

+0

Вы можете увидеть встроенный sql в grep выше, но, как я уже указывал, похоже, что ни одна из миграций даже не загружается. – JellicleCat

+0

Я не могу понять, почему, но когда я установил 'factory_girl_rails'' require: false' в моем Gemfile, я могу грабить. Любая идея, что такое объяснение? – JellicleCat

ответ

2

Я думаю, что ваша проблема напрямую связана с тем, как Factorygirl обрабатывает базы данных. Когда вы устанавливаете factory_girl_rails в require:false, это, кажется, решение.

Взгляните на эту FactoryGirl screws up rake db:migrate process

Смежные вопросы