1


1

cronスケジュールからレールにフラグメントキャッシュを強制する方法は?

誰かがページを最初にロードすることなく、ページをフラグメントキャッシュにトリガーする方法はありますか?

cronスケジュールを使用する予定です。これは、cronスケジューラがデータベースを更新するためです。これは、フラグメントキャッシュを強制的に実行するためです。

2 Answer


0


これは原始的な解決策ですが、ページのURLへのcurlリクエストをcronから常に発生させることができます。


0


バックグラウンドワーカーで次のコードを実行しました。 コードでコントローラーをインスタンス化し、必要に応じてビューをレンダリングし、キャッシュにデータを追加します。

cache_controller = PageController.new
cache_controller.response = Hashie::Mash.new({"content_type"=>"text/js"})
cache_controller.request = Hashie::Mash.new({"action"=>"show", "negotiate_mime"=>"js", "content_type"=>"application/x-www-form-urlencoded", "get?" => true})
cache_controller.params = {id: 1}
cache_controller.action_name = 'show'
cache_controller.show  # this is the method on controller you want to call.

私の場合、js.erbにアクセスしていたので、そのコンテンツの一部はあなたの例では必要ないかもしれません。