Twitter:Module 的未定义方法“搜索”(NoMethodError)
undefined method `search' for Twitter:Module (NoMethodError)
我正在用ruby学习mongodb,我写update.rb如下:
require 'rubygems'
require 'mongo'
require 'twitter'
require File.join(File.dirname(__FILE__), 'config')
class TweetArchiver
def initialize(tag)
connection = Mongo::Connection.new
db = connection[DATABASE_NAME]
@tweets = db[COLLECTION_NAME]
@tweets.create_index([['id', 1]], :unique => true)
@tweets.create_index([['tags', 1], ['id', -1]])
@tag = tag
@tweets_found = 0
end
def update
puts "Starting Twitter search for '#{@tag}'..."
save_tweets_for(@tag)
print "#{@tweets_found} tweets saved.\n\n"
end
private
def save_tweets_for(term)
Twitter.search(term).each do |tweet|
@tweets_found += 1
tweet_with_tag = tweet.to_hash.merge!({"tags" => [term]})
@tweets.save(tweet_with_tag)
end
end
end
I 运行 ruby update.rb,然后报错:
undefined method `search' for Twitter:Module (NoMethodError)
这个错误是不言自明的。 Twitter
模块没有定义 search
方法。
Twitter.search(term).each do |tweet|
您应该检查库的文档以确保您以正确的方式使用它。
我正在用ruby学习mongodb,我写update.rb如下:
require 'rubygems'
require 'mongo'
require 'twitter'
require File.join(File.dirname(__FILE__), 'config')
class TweetArchiver
def initialize(tag)
connection = Mongo::Connection.new
db = connection[DATABASE_NAME]
@tweets = db[COLLECTION_NAME]
@tweets.create_index([['id', 1]], :unique => true)
@tweets.create_index([['tags', 1], ['id', -1]])
@tag = tag
@tweets_found = 0
end
def update
puts "Starting Twitter search for '#{@tag}'..."
save_tweets_for(@tag)
print "#{@tweets_found} tweets saved.\n\n"
end
private
def save_tweets_for(term)
Twitter.search(term).each do |tweet|
@tweets_found += 1
tweet_with_tag = tweet.to_hash.merge!({"tags" => [term]})
@tweets.save(tweet_with_tag)
end
end
end
I 运行 ruby update.rb,然后报错:
undefined method `search' for Twitter:Module (NoMethodError)
这个错误是不言自明的。 Twitter
模块没有定义 search
方法。
Twitter.search(term).each do |tweet|
您应该检查库的文档以确保您以正确的方式使用它。