2012-01-25 31 views
7

Heroku'dayım ve Rails uygulamasında önbelleğe almayı deniyorum, ama anlamadığım bazı sorunlara rastlıyorum. Rails Guide ve Heroku belgelerini önbellekleme stratejileri hakkında okuduktan sonra kolay olacağını düşündüm ama görünüşte yanlış bir şeyler yapıyordum.Raylar Önbellek Eylem Süresi Bitmez

Sayı 1: eylem görünümü Yayım 2 dolacak gibi görünmüyor: Ben kullandığınızda: düzen => false, hem benim yönetici ve uygulama düzeni kullanılır

(sadece uygulama düzeni almaya çalışırken) Bu acemi için herhangi bir yardım en çok takdir edilecektir!

production.rb bir ürün değiştirerek süre sonu teste tabi tutmak

layout 'admin' 
caches_action :show, :layout => false 

def show 
    render :layout => 'application' 
end 

def update 
    expire_action :action => :show 
end 

config.cache_store = :dalli_store 
config.action_controller.perform_caching = true (added after reading http://bit.ly/oRKub1) 

kontrol (aynı zamanda Heroku belgeleri başına Dalli takılı), ama göstermek görünüşüdür sona etmez. Bu yüzden, önbelleğe almadığım ürünler için düzenleme görünümüne baktığımda, kaydedilen değişikliği görebiliyorum (başlığa bir kelime ekledim), ancak gösteriyi görüntülediğimde hala eski bilgilere sahip.

+0

bakın. – nbsp

cevap

0

uygulamalarınız için önbelleğe alma yapar vernik tarafından kara gibi ben yok kavak/bambu yığını raylar içinde çalışmalarını önbelleğe düşünmek kullanarak eğer ben "caches_action" bilmem, ama sen deneyebilirsiniz

+0

http://devcenter.heroku.com/articles/http-caching – Nath

0

Tüm önbelleği el ile sona erdirin ve ne olduğunu görün.

def update 
    # expire_action :action => :show 
    Rails.cache.clear 
end 
0

çözüm bulmak için yardımcı olacaktır this bağlantıdan daha herhangi önbelleğe alma sorunu varsa. Doğrudan kahraman konsolu üzerinden dalli/memcached istemcisine bağlanıp önbelleği temizlemek için flush_all komutunu kullanabilirsiniz. Ya da aynı konuyla ilgili olarak bu google-groups link

İlgili konular