2

我想使用 memcached 来 Rails.cache 一个 flickraw 响应(这也适用于其他不可转储的结构),如下所示:

@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 将对象作为字符串保存在缓存中,然后以某种方式重新加载它?有任何想法吗?

4

1 回答 1

2

我在 github tracker 上问了你的问题,因为我也对实现这一点非常感兴趣。(见https://github.com/hanklords/flickraw/issues#issue/16

hanklords 似乎已经在当前的提交中解决了这个问题!很棒的事情,我正在尝试在我当前的应用程序中实现这一点。你也可以测试一下吗,z3cko? https://github.com/hanklords/flickraw/commit/d09db4c5549e72b42eefbf1ea5c98f95bd1bd3d9

于 2010-11-22T20:38:09.913 回答