Использование команды перезагрузки activerecord в моем приложении, похоже, использует кэшированные данные при вызове.
Я могу выполнить репликацию в отладчике, выполнив следующие действия.
u = User.find(1)
u.first_name
#outputs bob
# manually change first_name for record 1 to jim with PGadmin or with rails console
u.reload
u.valid?
#outputs true
u.first_name
#outputs bob
#if i do this again
u = User.find(1)
#old data again
u.first_name
#outputs bob
#if i load data this way
u = User.where('id = 1').first
#new data
u.first_name
#outputs jim
При просмотре моегоПосле запуска перезагрузки файл журнала печатает
[1m [35mCACHE (0.0ms) [0m ВЫБРАТЬ «users». * FROM «users» WHERE («users». "id" = 1) LIMIT 1
Похоже, что он использует кеш
Моя среда: Rails 3.0.3, Ruby 1.8.7, Ubuntu 10.04, PostgreSQL 8.4