Кешировать только основное содержание в рельсах
Использование Rails 3.1.1 и Heroku.
Я считаю, что это должно быть довольно легко исправить, но я не могу найти (и легко проверить), как это сделать. У меня очень медленный контроллер (6 сек)Product#show
с большим количествомN + 1, и другие вещи, которые мне придется решать.
Сайт представляет собой сайт с двумя столбцами (main-column
а такжеright-column
) откуда основной контентProduct#show
отображается в одном столбце иdaily product
показаны в другом, в том числе "Случайный продукт из базы данных ».
То, что я хочу сделать, это чтобы содержимоеmain-column
который созданProduct#show
быть кэшированным (и, таким образом, обойти контроллер и выиграть 6 секунд). Однако я хочу, чтобы правый столбец был динамическим (и загружался для каждого запроса страницы).
Если я используюcaches_page :show
он будет кэшировать весь сайт, включаяright-column
, что заставляет меня истекать кэш каждый день, чтобы иметь возможность загрузить новыйDaily Product
, Не очень хорошее решение
Если я используюcache('product-show' + @product.slug) do
он только кэширует представление (верно?) и все равно должен пройти через контроллер.
Итак, как я могу решить это?