Ruby on rails Twitter集成rails 4应用程序

Ruby on rails Twitter集成rails 4应用程序,ruby-on-rails,ruby,twitter,ruby-on-rails-4,initializer,Ruby On Rails,Ruby,Twitter,Ruby On Rails 4,Initializer,我正试图使用此工具将twitter提要集成到我的Rails 4应用程序中 我已经阅读了github页面上的文档,但是在试图使用视图中的方法时遇到了问题 我在名为twitter\u init.rb的初始值设定文件中有以下内容(带有我的身份信息): 在我的视图中尝试使用以下代码时,我收到错误未定义的局部变量或类#的方法“client”: 是否还有其他步骤公开客户端变量,或者可能是我没有正确初始化它?当您将客户端设置为Twitter::Streaming::client.new时,您在启动文件中创

我正试图使用此工具将twitter提要集成到我的Rails 4应用程序中

我已经阅读了github页面上的文档,但是在试图使用视图中的方法时遇到了问题

我在名为
twitter\u init.rb
的初始值设定文件中有以下内容(带有我的身份信息):

在我的视图中尝试使用以下代码时,我收到错误
未定义的局部变量或类#
的方法“client”:



是否还有其他步骤公开客户端变量,或者可能是我没有正确初始化它?

当您将客户端设置为Twitter::Streaming::client.new时,您在启动文件中创建了一个局部变量。这个变量失去了作用域,当您进入视图时,它早已消失

要使其正常工作,请删除twitter_init.rb

然后在正在执行的控制器操作中

@client = Twitter::Streaming::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
然后在视图中

<% @client.sample do |tweet| %>
  <%= tweet.text %>
<% end %>

注意@符号


但是,这违反了skinny controller厚模型约定,应该在服务中的其他位置进行初始化。

当您将客户端设置为Twitter::Streaming::client.new时,您在启动文件中创建了一个局部变量。这个变量失去了作用域,当您进入视图时,它早已消失

要使其正常工作,请删除twitter_init.rb

然后在正在执行的控制器操作中

@client = Twitter::Streaming::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
然后在视图中

<% @client.sample do |tweet| %>
  <%= tweet.text %>
<% end %>

注意@符号


但是,这确实违反了skinny controller厚模型约定,应该在服务中的其他位置进行初始化。

这是可行的-但是您是否想过如何让它在控制器中没有此配置的情况下工作?感谢这项工作-但是你有没有想过如何让它在控制器中没有这个配置的情况下工作?谢谢