Как работает rake db: migrate на Heroku? - PullRequest
0 голосов
/ 29 февраля 2012

Мое приложение просто упало после того, как я нажал на Heroku и запустил rake db:migrate.Но ошибка не имела смысла ...

ActionView::Template::Error (undefined method `email_address' for #<Invite:0x000000065fb788>):

... потому что миграция содержала:

rename_column :invites, :email, :email_address

Так что я в конце концов понял, что она работает после перезапуска приложения (heroku restart).Хорошая сделка.

Однако я не совсем понимаю, как теперь работает rake db:migrate.Каждая другая миграция собирала соответствующий атрибут модели без перезапуска.

Что происходит, когда я запускаю rake db:migrate на Heroku? Что побуждает приложение подбирать новые атрибуты модели и почему оно не сработало на этот раз?

1 Ответ

0 голосов
/ 29 февраля 2012

В новом приложении rails вы можете увидеть следующее

... / config / environment / development.rb

# In the development environment your application's code is reloaded on
# every request.  This slows down response time but is perfect for development
# since you don't have to restart the web server when you make code changes.
config.cache_classes = false

... / config / environment / production.rb

# Code is not reloaded between requests
config.cache_classes = true
...