У меня есть определенные данные, которые обновляются нечасто - скажем, раз в несколько недель или около того. Кроме того, они доступны пользователям и могут отображаться как JSON. Это делает их идеальными для кеширования. Итак, я кеширую их вывод через caches_action
.
Скоро я буду обновлять эти данные из задания Resque, и после успешного обновления мне нужно будет сделать кэш недействительным. Я не уверен, где это сделать, так как похоже на работу контроллера. Неправильно помещать это в модель, так как это больше касается уровня представления. (В конце концов, почему модель должна заботиться о том, чтобы вывод JSON длился вечно?)
Не думаю, что здесь будет работать уборочная машина, так как она работает в контроллере, правильно? Я видел, как люди предлагают создавать экземпляр контроллера в работе, но это тоже не очень хорошо. Кто-нибудь имел дело с этим в СУХОЙ форме? Единственный способ сделать это - манипулировать Rails.cache
вручную.