2012-05-30 6 views
1

Я пытаюсь использовать HTTParty в своем классе FindXYZ, распространяющий Thor, но он не работает. Все, что я хочу сделать, это использовать HTTParty получить для запроса CouchDB в моем методе XYZRuby: Thor and Httparty

Когда я пытаюсь запустить я вижу ошибку не удается найти получить

require 'json' 
require 'httparty' 
require 'thor' 

class FindXyz < Thor 
    include Thor::Actions 

    include HTTParty 
    headers 'Accept' => 'application/json' 
    server = '192.168.5.50:5984' 
    user = 'uname' 
    password = 'passo' 

    couchdb_url = "http://#{user}:#{password}@#{server}" 
    basic_auth user, password 
    base_uri couchdb_url 
    default_params :output => 'json' 
    format :json 

    desc "xyz", "Find scenarios that contains SSL" 
    method_option :name, :aliases => "-t", :required => true 
    method_option :location, :aliases => "-s",:required => true 

    def xyz 
     name = options[:name] 
     loc = options[:location] 
     file_path = File.join(loc, name) 

     t_json = JSON.parse(File.read(file_path)) 

    t_json["ids"].each do |temp| 
     path_to_doc = "/test123/#{temp}" 
     response = get(path_to_doc) 
     puts "Found => #{temp}" if response.to_s.include?('Birdy') 
    end #close the loop 
    end #close the method xyz 
end #close class 

ответ

1

Попробуйте этот способ вне класса

puts FindXyz.get('....').inspect 

и HTTParty.get(...) внутри FinXyz класса

+0

Большое спасибо за быстрый ответ, но ** один конец для класса ** один для метода xyz и ** один для конца в этом методе .... Извините за плохой зачет –