2011-12-04 70 views
3

我剛剛開始構建一個使用ActiveResource從API中消費的api和應用程序。我將通過編輯來了解具體情況,但我最初的問題是這樣的:爲什麼ActiveResource返回的是散列數組而不是對象?

我有一個控制器,它執行Resource.find(resource.id),它將返回一個對象,如果我包含在api端,包含的關聯也很容易與對象一起工作。爲了拉取更多定製的集合,應用程序轉到api上的自定義操作,這將返回一個不容易處理的哈希數組(例如with link_to)。

第一個問題:爲什麼?

如上所述,如果有必要,我會補充更多(從我的角度來看,這可能會變得更加複雜,可能不是專業人士或專家的角度,所以我暫時擱置)。我希望有人能給出一個解釋讓我更好地控制ActiveResource。

回答

4

http://api.rubyonrails.org/classes/ActiveResource/CustomMethods.html

自定義資源使用不用彷徨,所以:

「 注:對象從這個方法不會被自動轉換成的ActiveResource :: Base的情況下返回 - 他們都是普通的哈希如果您期待的ActiveResource :: Base的情況下,使用find類方法與:從選項 「

所以,試圖另闢蹊徑....

+0

....這是學習比以前能夠更有效地使用.find – blueblank

相關問題