2012-07-13 61 views
11

我在我的代碼中安裝了'ActiveSupport'並要求'active_support',但是當我嘗試使用Hash.from_xml()方法時,我收到了「No Method Error」。我需要做什麼才能讓Hash.from_xml()工作?

我錯過了什麼?

$ gem list 

回報:

\*** LOCAL GEMS \*** 

activesupport (3.2.6) 
bundler (1.1.4) 
i18n (0.6.0) 
json (1.7.3) 
mime-types (1.19) 
multi_json (1.3.6) 
rake (0.9.2.2) 
rest-client (1.6.7) 
rubygems-bundler (1.0.3) 
rvm (1.11.3.5) 

和:

$ ruby -v 

回報:

ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-darwin11.4.0] 

file.rb的內容是:

require 'active_support' 
require 'rest-client' 
require 'json' 
token = "xxx" 
user = "xxx" 
survey_id = "xxx" 
responses_from_api = RestClient.get "https://survey.qualtrics.com/WRAPI/ControlPanel/api.php?Request=getLegacyResponseData&User=#{user}&Token=#{token}&Version=2.0&SurveyID=#{survey_id}&Format=XML" 
responses = Hash.from_xml(responses_from_api).to_json 
puts responses 

和:

$ ruby file.rb 

回報:

file.rb:8:in `<main>': undefined method `from_xml' for Hash:Class (NoMethodError) 

回答

32

只是require 'active_support'沒有做非常多,你必須手動在片拉之類的。如果你希望所有的ActiveSupport的:

require 'active_support/all' 

,或者如果你只是想哈希擴展:

require 'active_support/core_ext/hash' 
+0

真棒,謝謝! – 2012-07-14 00:08:35

相關問題