Rails.cache.read devuelve nil en los Rails, pero no en la consola

Estoy intentando almacenar en caché y leer un objeto de usuario a través de su clave api. El uso se almacena bien en caché, y puedo leer el caché en la consola de Rails, pero por alguna razón, hacer exactamente el mismo Rails.cache.read en la aplicación Rails siempre devuelve nil.

Heres un ejemplo de lo que estoy haciendo. Esto está en una función before_filter .

 def authKey #?api=ce6f95a8bf7f9861330ede58f8972981 key = params[:api] cu = Rails.cache.read(key) # logger.debug("CACHING USER #{key}") Rails.cache.write(key, user) 

La cu siempre será nula, pero el objeto existirá en memcache. ¿Alguien más se ha encontrado con este tipo de problema? Estoy usando la gem dalli con compresión habilitada.

Creo que el almacenamiento en caché de Rails está desactivado de forma predeterminada para el desarrollo y en pruebas y producción. Compruebe en config / environment / development.rb y vea qué config.cache_classes está configurado para …

El almacenamiento en caché está desactivado de forma predeterminada para el entorno de desarrollo. La adición de ‘config.action_controller.perform_caching = true’ a config / environment / development.rb debería solucionar el problema.

http://guides.rubyonrails.org/caching_with_rails.html#basic-caching