Я обновляю сайт с rails 4.2 до 5.1
В предыдущей настройке у меня было кэширование страницы в сгенерированной таблице стилей (для каждого арендатора), все отлично работает.
После обновления до5.1 это больше не работает
Использование последней версии actionpack-page_caching
Контроллер для таблицы стилей, которая кэшируется, выглядит следующим образом:
class StylesheetsController < ApplicationController
caches_page :show, gzip: true
def show
@stylesheet = Stylesheet.find(params[:id])
respond_to do |format|
format.html
format.css { render text: @stylesheet.contents, content_type: "text/css" }
end
end
end
Я получаюследующая ошибка в журналах:
ActionView::MissingTemplate - Missing template stylesheets/show, application/show with {:locale=>[:en], :formats=>[:css], :variants=>[], :handlers=>[:raw, :erb, :html, :builder, :ruby]}. Searched in:
Физического шаблона для этого не существует, так как я отрисовываю его непосредственно из модели таблицы стилей.Подтвердили, что модель возвращает данные.
Кэширование включено в разработке.
На странице макета ссылка на динамическую таблицу стилей:
<link href="<%= dynamic_stylesheet %>.css" rel="stylesheet" type="text/css" />
и помощникМетод (в application_helper):
def dynamic_stylesheet
stylesheet_path(current_account.stylesheet) unless current_account&.stylesheet&.id.nil?
end
Я не уверен, что здесь пропускается / пропускается, какие-нибудь указатели?