2015-11-25 3 views
-1

У меня есть веб-страница, которая кэшируется таким образом.Как истечь кеш в Rails?

<% cache(params[:page]) do %> 
    #Content 
<% end %> 

Как я могу списать кеш сейчас?

+4

Посмотрите [expire_fragment] (http://api.rubyonrails.org/classes/ActionController/Caching/Fragments.html#method-i-expire_fragment) –

+0

Добро пожаловать к переполнению стека. Когда вы спрашиваете, действительно важно рассказать нам, что вы пробовали. Неспособность сделать это заставляет нас думать, что вы не пробовали и сразу же спросили, похоже, что вы хотите, чтобы мы писали код для вас. Это не популярная вещь на SO, и быстро приводит к тому, что голоса и закрытые вопросы закрываются. Пожалуйста, см. «[Ask]» и http://meta.stackoverflow.com/questions/261592/how-much-research-effort-is-expected-of-stack-overflow-users, чтобы получить представление о ожиданиях. –

ответ

0

Использование ActiveSupport :: Cache :: Store, вы должны быть в состоянии сделать

<% cache(key, :expires_in => 1.hour) do %> 
    <!-- content --> 
<% end %> 
1

Это называется кэширование фрагмента, в соответствии с documentation вы можете истечь фрагмент, просто помещая этот код на контроллере :

ActionController::Base.new.expire_fragment(params[:page], options = nil) 
Смежные вопросы