2010-10-29 6 views
1

В настоящее время я использую кеширование фрагментов с помощью ключа объекта. И я истекаю кеш с помощью Touch с обновлением колонки updated_at, а затем текущий кеш становится устаревшим. И новый кеш генерируется в следующий раз.Кэширование фрагментов с помощью Touch

<% cache do product %> 

Ключ кэша для объекта выглядит следующим образом

table_name/ID-updated_at 

Теперь я хочу, чтобы кэшировать мои продукты где-то в другом месте. Для этого я хотел бы сделать то же самое, что и раньше, что просто дает объект в параметрах кеша, но я не могу этого сделать :(

Было бы здорово, если бы я мог сгенерировать такой ключ, чтобы до сих пор мой кэш истек с Touch.

table_name/ID-something_updated_at 
<% cache product,something do %> 

к сожалению, это не возможно, не кто-то имеет какие-либо идеи, как я мог бы решить мою проблему?

Грег

ответ

1

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

<% cache [product, other, product.updated_at] do %> 
    ... 
<% end %> 
Смежные вопросы