Описание тега sweeper

Sweepers - это рельсовые конструкции кеширования, которые позволяют изменениям в моделях очищать (очищать / удалять) содержимое кеша, обеспечивая синхронизацию записей кеша с данными. Подметальные машины представляют собой комбинацию наблюдателей и контроллеров фильтров.
1 ответ

Как вызвать рельсовую подметальную машину в этом сценарии?

Как вы можете видеть из кода ниже. Я кеширую show действие. У меня также есть следующий метод в действии шоу View.create_for(@song), Я хотел бы сделать это так, когда View.create_for(@song) вызывается, очищает соответствующий кеш. Как бы я пошел по …
20 янв '12 в 09:57
0 ответов

Как обновить кэшированное действие?

Потеря идей о том, как правильно использовать кэширование действий для контроллера косвенно в зависимости от модели. Фоновый сценарий: Наличие простой модели рельсов для объектов продукта class Product < ActiveRecord::Base ... end Контроллер, кот…
1 ответ

Истечение срока действия контроллера от Sweeper не работает

Наличие контроллера, обрабатывающего рендеринг больших XML-каналов module Spree class FeedsController < Spree::StoreController ... caches_action :products_out cache_sweeper FeedSweeper # XML feed in format of `xxxxxxx.com' def products_out @produ…
17 мар '14 в 01:43
2 ответа

Кэширование действий не истекает правильно, даже когда я вижу, что оно вызывается

У меня есть подметальная машина, срок действия которой должен истечь, несколько кешей действий. Даже если отладчик останавливается непосредственно перед вызовом expire_action, на самом деле действие не заканчивается. Есть идеи, что может происходить…
1 ответ

Rails 3.1 Sweeper для метода контроллера в другом пространстве имен

Все, Я пытаюсь добавить кеширование в мои приложения на Rails 3.1. Подметальная машина живет в пространстве имен по умолчанию, и у меня есть контроллер, который живет в пространстве имен администратора. Например, у меня есть BooksController в простр…
29 май '12 в 04:34
1 ответ

Rails3 Cache Sweeper для ассоциации has_and_belongs_to_many

У меня есть следующие отношения, смоделированные в приложении Rails3: class User < ActiveRecord::Base has_and_belongs_to_many :skills end class SkillsUser < ActiveRecord::Base end class Skill < ActiveRecord::Base has_and_belongs_to_many :us…
11 авг '11 в 02:32
1 ответ

Невозможно выполнить expire_action в Rails

ТЛ; др мой expire_index метод ниже вызывается, я вижу puts в логах. Однако когда я обновляю страницу, это устаревшая версия. примечание: я использую rails_admin для обновления моделей. Но также заметили то же поведение, используя консоль rails напря…
1 ответ

Rails не удаляет страницу кэша /.html, когда вызывается уборщик

У меня есть некоторые проблемы с Sweepers и Caching in Rails. Файл.html в /cache создается при первом просмотре. Действие Sweeper вызывается при необходимости. Однако действие уборщика не удаляет страницу.html из /cache Приведенный ниже код удален и…
04 фев '11 в 22:31
1 ответ

Rails: доступ к переменным контроллера в Sweeper

Итак, у меня есть некоторый код, который мне нужно изменить относительно Rails Sweeper: class UserTrackingSweeper < ActionController::Caching::Sweeper observe User def after_update(user) return if user.nil? || user.created_at.nil? #fix weird bug …
7 ответов

В Rails Sweeper не вызывается при установке только на модель

Я работаю над приложением Rails, где я использую кэширование страниц для хранения статического вывода html. Кеширование работает отлично. У меня проблемы с истечением срока хранения кешей. Я полагаю, что моя проблема, частично, потому что я не истек…
23 сен '09 в 02:46
1 ответ

Очиститель Rails-кэша не работает при создании

У меня есть контроллер, где: caches_action :show cache_sweeper :the_model_sweeper, :only => [:update, :destroy] и подметальная машина: observe TheModel def after_save(the_model) expire_cache(the_model) end def after_destroy(the_model) expire_cach…
1 ответ

Рельсы - caches_action expire_action

Я хочу, чтобы истек срок действия в кэше и задавался вопросом, как создать правильную ссылку. #controller caches_action :index, :layout => false #generates this fragment which works fine views/0.0.0.0:3000/article/someid/posts #sweeper ... expire…
01 июн '10 в 18:42
2 ответа

Как включить модуль с окончанием срока действия кэша в метлах?

У нас есть следующая подметальная машина в рельсовом приложении: class AgencyEquipmentTypeSweeper < ActionController::Caching::Sweeper observe AgencyEquipmentType #include ExpireOptions def after_update(agency_equipment_type) expire_options(agenc…
2 ответа

Кэширование: неправильные пути и страницы не просрочены

У меня проблема с простым кэшированием (ruby 1.9.2, rails 3.1.3, среда разработки): development.rb: config.action_controller.perform_caching = true config.action_controller.cache_store = :file_store, 'tmp/cache' config.action_controller.page_cache_d…
1 ответ

Могут ли рельсы подметать на разных контроллерах?

У меня есть кэширование действий, работающее с моим индексом сайтов, и я настроил SiteSweeper, который работает нормально: # app/controllers/admin/sites_controller.rb class Admin::SitesController < Admin::BaseController cache_sweeper :site_sweepe…
22 дек '10 в 02:20
1 ответ

Ускоритель отсутствует метод expire_fragment в rspec

Я использую уборщик, чтобы очистить кэш фрагментов, и все работает нормально при разработке, но я получаю сообщение об ошибке в наших спецификациях 2) Admin - Categories #index displays all categories Failure/Error: create_basic_category_set NoMetho…
10 апр '14 в 20:04
1 ответ

Rails: очистители кэша и истекающие фрагменты

У меня есть форма, где администратор может создать нового пользователя, в этой форме есть remote: true, После успешного создания пользователя раздел на странице, отображающий всех пользователей, обновляется. Это не происходит в Production, так как у…
08 авг '13 в 01:36
4 ответа

Как бы вы истекли время хранения фрагментов в модели или в Resque?

Я взял цитату ниже, в которой я вижу некоторый смысл: "Кэшированные страницы и фрагменты обычно зависят от состояний модели. Кэш не заботится о том, какие действия создают, изменяют или разрушают соответствующие модели. Поэтому использование обычног…
10 май '12 в 01:05
2 ответа

Как я могу получить доступ к именованным маршрутам в Rails Sweeper?

У меня есть уборщик, который нагревает кэш, открывая URL-адреса в разветвленных процессах. Достаточно просто запрограммировать хост для этих URL, но я хочу, чтобы он динамически изменялся в зависимости от среды. Я знаю, что могу установить для этого…
19 май '11 в 20:53
1 ответ

Кеширование в Rails 3: Как использовать очиститель с кэшированием действий и фрагментов для истечения срока действия кэша?

Я работаю над страницей, которая отображает меню ресторана. У меня есть 2 модели: FoodMenu has_many: продукты и продукт принадлежит:food_menu. У меня нет контроллеров ни для одной модели. Вместо этого я использую "pages_controller.rb", чтобы отобраз…