Предварительно построенный фрагментный кеш (внутренний подход)

Я хочу предварительно построить партиал, который рендерится за несколько секунд. Я видел функции, которые используют прокси для предварительной загрузки кеша через http, но я хотел бы иметь "внутреннее" решение.

Это моя функция, которая вызывается всякий раз, когда myobject обновлено:

def pre_build_partial myobject
  the_controller = ActionController::Base.new
  the_controller.instance_variable_set '@myobject', myobject

  view_renderer = ActionView::Renderer.new the_controller.lookup_context
  view_renderer.render the_controller.view_context, { partial: 'mypartial', layout: false }
end

Он отлично работает для партиалов, которые используют базовые помощники, но мои пользовательские помощники выдают ошибки:

undefined method `my_custom_helper_function' for #<#<Class:...>

Я думаю, что помощник должен быть включен в the_controller, но я не могу найти способ сделать это. Спасибо за любую помощь заранее!

1 ответ

Решение

Вы можете выбрать некоторые идеи из источника:) https://github.com/rails/rails/issues/18409

Другие вопросы по тегам