如何在Rails 3中将我的推文缓存一小时?

时间:2011-03-09 02:58:35

标签: ruby-on-rails-3 twitter

我正在使用twitter gem来获取我最新的5条推文。它们在页面上显示得很好,但是出门并在每个页面请求上获取推文都很愚蠢。我认为将5条推文放在MemCache中同样过分,因为我没有将MemCache用于其他任何事情。

所以我决定在我的ApplicationController中创建几个常量,TWEETS和TWEET_TIME。然后,before_filter方法可以检查TWEET_TIME,然后如果经过了一定的时间则填充TWEETS。同样地,我可以捕获错误并保留我抓取的最后一条推文,以防Twitter出现问题。

除非我无法更改这些值,因为:

dynamic constant assignment

我无法将值放在@变量中,因为它们不是从一个请求到另一个请求。我该怎么做才能做到这一点?我开始时似乎很简单。

1 个答案:

答案 0 :(得分:0)

您可以使用类变量(@@ variable),这些变量在请求之间是持久的,或者更好地写入数据库。