Rails.cache и un-dumpable (Marshal) структуры: как кешировать?(на примере фликкра-ответ) - PullRequest
2 голосов
/ 19 ноября 2010

Я хочу, чтобы Rails.cache получил ответ flickraw (это применимо также и к другим структурам без дампа) с memcached следующим образом:

@flickr = Rails.cache.fetch('flickr_sets', :expires_in => 1) { flickr.photos.getRecent }

очевидная ошибка

TypeError: singleton can't be dumped

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

http://zilkey.com/2008/7/5/rails-cache-memcached-development-mode-and-offline-cache-invalidation

мои вопросы: каков был бы правильный подход для кэширования такого рода объектов? я должен написать свой собственный метод дампа? не было бы возможно сохранить объект в кеше с flickr.photos.getRecent.to_s в виде строки, а затем каким-то образом перезагрузить его? есть идеи?

1 Ответ

2 голосов
/ 22 ноября 2010

Я задал ваш вопрос на github tracker, так как я также очень заинтересован в достижении этого. (см. https://github.com/hanklords/flickraw/issues#issue/16)

Хэнклорды, похоже, исправили это в текущем коммите! здорово, я пытаюсь реализовать это в моем текущем приложении. Вы можете также проверить это, z3cko? https://github.com/hanklords/flickraw/commit/d09db4c5549e72b42eefbf1ea5c98f95bd1bd3d9

...