Предположим, вы хотите выполнить низкоуровневое кэширование в Rails (например, с помощью memcached) и хотите, чтобы где-то в вашем приложении был только 1 вызов, например...
Rails.cache.fetch('books', expires_in: 1.day) do
Book.offset(offset)
.limit(limit)
.select('title, author, number_of_pages')
.all
end
... чтобы разогреть кеш при загрузке приложения, поэтому вы можете просто использовать простой вызов, например...
Rails.cache.read('books')
...в любом месте и несколько раз в приложении (в представлениях, контроллерах, помощниках...) для доступа к этой коллекции "книг".
Куда нужно поместить первоначальный вызов «fetch», чтобы он работал?
cron
. - person spike   schedule 07.05.2013