用于Ruby on Rails的Twitter Gem无法正常工作。我错过了什么?

时间:2013-12-09 00:32:23

标签: ruby-on-rails ruby twitter

我正在尝试让Twitter gem版本5.1.1在我的应用程序中运行,但我遇到配置问题。我正在运行rails 4和Ruby 2.0.0。在我的Gemfile中,我列出了“gem'twitter'”,并通过捆绑包安装了它。根据文档,我在config / initializers / twitter_credentials.rb中创建了一个初始化文件。该文件看起来像这样(虽然我的密钥和秘密填充了我的推特信息):

require 'twitter'

client = Twitter::REST::Client.new do |config|
  config.consumer_key        = "YOUR_CONSUMER_KEY"
  config.consumer_secret     = "YOUR_CONSUMER_SECRET"
  config.access_token        = "YOUR_ACCESS_TOKEN"
  config.access_token_secret = "YOUR_ACCESS_SECRET"
end

当我尝试在rails控制台中使用客户端时,这是我收到的错误消息:

2.0.0p353 :001 > client.update("I'm tweeting with @gem!")
NameError: undefined local variable or method `client' for main:Object
from (irb):1
from /Users/user_name/.rvm/gems/ruby-2.0.0-p353/gems/railties-4.0.2/lib/rails/commands/console.rb:90:in `start'
from /Users/user_name/.rvm/gems/ruby-2.0.0-p353/gems/railties-4.0.2/lib/rails/commands/console.rb:9:in `start'
from /Users/user_name/.rvm/gems/ruby-2.0.0-p353/gems/railties-4.0.2/lib/rails/commands.rb:62:in `<top (required)>'
from bin/rails:4:in `require'
from bin/rails:4:in `<main>'

知道问题是什么吗?

1 个答案:

答案 0 :(得分:8)

是的,随后发布的版本有所改变。因此,要在应用程序中访问它,请将变量设置为全局变量以具有完全访问权限。所以试试$client =

现在,当您访问它时,请致电$client.user_timeline