コントローラでcache_actionを使用していますが、一部のページでログインしているユーザーのキャッシュのチェックをバイパスしたいと思います。私のログインシステムはDevise/Omniauthです。
キャッシュシステムでbefore_filterに統合できるものが見つかると思いましたが、サイコロはありませんでした。
これを達成するにはどうすればよいですか?
コントローラでcache_actionを使用していますが、一部のページでログインしているユーザーのキャッシュのチェックをバイパスしたいと思います。私のログインシステムはDevise/Omniauthです。
キャッシュシステムでbefore_filterに統合できるものが見つかると思いましたが、サイコロはありませんでした。
これを達成するにはどうすればよいですか?
私はあなたがこのようなことをすることができると信じています、しかし私はそれを自分で試したことがありません:
caches_action :index, :unless => lambda { user_signed_in? }
Rails 4 以降、CacheHelper のcache_unlessと Deviseの cache_unlessを使用できます。user_signed_in?
<%= cache_unless user_signed_in?, project do %>
<b>All the topics on this project</b>
<%= render project.topics %>
<% end %>