Rails: кеш с заменами?

Я частично кеширую, но одна часть динамическая:

- cache @product do
  .product
    #.....
    .price = format_money(@product.money)

И хотел бы превратить это во что-то вроде этого:

- cache_subst @product, {price: format_money(@product.money)} do
  .product
    #.....
    .price {{price}}

Есть какой-то драгоценный камень или метод, который делает это?

Обновить:

Пожалуйста, не предлагайте делать деньги частью ключа, это то, что мы делаем сейчас.

1 ответ

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

- cache [@product, format_money(@product.money)] do
  .product
    #....
    .price = format_money(@product.money)
Другие вопросы по тегам