我試圖在我的Rails應用程序中使用模型來從外部API檢索信息。我想要做的是以類似於ActiveRecord模型提供的方式(特別是關聯,以及相同樣式的鏈式查詢方法)訪問我的數據模型(可能由多個API調用產生的信息組成)。在Ruby on Rails中對外部API支持的模型使用ActiveRecord接口
我最初的直覺是重新創建我想要的ActiveRecord的部分,併合並了這個API。不想「重新發明輪子」,看到要添加更多功能需要多少工作才能使我退後一步,重新評估如何解決這個問題。
我已經找到了使用ActiveRecord而不使用表格的方法(參見:Railscast#193 Tableless Model和博客文章here)並查看了ActiveRecord。由於ActiveModel似乎只包含驗證,我不確定這在這種情況下非常有用。在不使用表格的情況下使用ActiveRecord的解決方法似乎是最好的選擇,但我懷疑有一種更乾淨的方式來做到這一點,我只是沒有看到。
Here是一個包含了一些代碼,當我試圖重新創建ActiveRecord功能,從ActiveRecord源本身大量借用寫的代碼。
我的問題歸結爲:我可以通過執行上面指定的ActiveRecord的解決方法或自己重新創建功能來獲得我想要的功能(鏈接查詢方法,關係),但這些解決方案真的很理想嗎?
查看https://github.com/adelevie/parse_resource中的代碼,它充當Parse.com API的包裝。也許它會有幫助。 – 2013-03-09 17:20:39
我知道AR背後有不同數據庫的適配器,也許你可以寫一種「APIAdapter」? – 2013-03-09 17:27:34
@RichardBrown - 謝謝。這真的會有所幫助。 – 2013-03-09 17:49:50