【发布时间】:2011-10-12 05:00:42
【问题描述】:
我是 Ruby(和 Rails)的新手,希望您能帮助解决我遇到的一些困惑。
我正在尝试将Twitter gem 集成到我的网站中,以获取用户的最新推文,并获取指向他们个人资料图片的链接。直到(我认为是)一小时内第 100 次 API 调用之前,Gem 都运行良好,之后 Twitter 将切断您的联系。
根据我收集的信息,我需要使用 memcache 将结果缓存约 1 分钟。有一些很棒的pseudocode here,但不幸的是,这有点超出我的想象。我希望我能得到更多的细节。
目前,我不确定该代码应该放在哪里?我想在应用程序布局视图中显示 twitter 信息,那么它会进入 application_helper.rb 文件中的方法吗?
我为解决这个问题所做的最佳尝试导致了以下代码,该代码引发了“缺少帮助文件”错误。
module ApplicationHelper
require "memcache"
def twitter
cache = MemCache.new
twitter = cache.get("twitter").first
if twitter.nil?
begin
twitter = Twitter.user("TwitterName")
cache.set("twitter", twitter, :expires_in => 1.minute) if twitter
rescue
twitter = default
end
end
return twitter
end
end
【问题讨论】:
标签: ruby-on-rails ruby caching twitter