2011-03-04 59 views
0

我正在使用Ruby on Rails 3,並且我想將從應用程序(APP1)檢索到的JSON數據「映射」到另一個應用程序的類(APP2)。如何將JSON數據「映射」爲沒有數據庫表的類?

在幾句話APP2使一個HTTP請求到APP1APP1發回JSON DATAS。 APP2應該接收這些數據並創建一個新的類,這些數據僅用於內部使用。 APP2中的類不應具有數據庫表,但如果具有ActiveRecord的所有優點,則該類非常有用。

我所需要的主要是處理來自APP1檢索爲 一個ActiveRecord在APP2的信息。

你有何建議?我必須做什麼?

+1

你是否控制這兩個應用?如果是的話:讓App1以XML響應並在App2中擁有ActiveResource模型會更容易。有關詳細信息,請參閱http://api.rubyonrails.org/classes/ActiveResource/Base.html。 – Wukerplank 2011-03-04 15:39:10

回答

2

您可以使用ActiveRecord中很多ActiveRecord的不錯功能,因爲它們大部分都已移至ActiveModel。例如:

class User 
    include ActiveModel::Serializers::JSON 
    attr_accessor :attributes 
end 

user = User.new.from_json %q{ { "first_name": "John", "last_name": "Doe" } } 
puts user 

也就是說,@ Wukerplank說得很好。如果您控制api,ActiveResource可以成爲連接2個應用程序的一個非常簡單的方法。