我刚刚开始构建一个使用 ActiveResource 的 api 和应用程序。我将通过编辑进入细节,但我最初的问题是:

我有一个执行 Resource.find(resource.id) 的 Controller ,它将返回一个对象,如果我在 api 端包含,包含的关联也很容易与对象一起使用。为了拉出一个更自定义的集合,应用程序转到 api 上的自定义操作,这将返回一个不容易使用的哈希数组(例如,使用 link_to)。

第一个问题:为什么?

如前所述,如有必要,我会填写更多(从我的角度来看,它会变得更加复杂,从专业/专家的角度来看可能并非如此,所以我现在暂缓)。我希望有人可以给出一个解释,让我可以更好地控制 ActiveResource。

最佳答案

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

自定义资源使用 .get,所以:


注意:此方法返回的对象不会自动转换为 ActiveResource::Base 实例——它们是普通的哈希。如果您需要 ActiveResource::Base 实例,请使用带有 :from 选项的 find 类方法。


所以,尝试另一种方式......

关于ruby-on-rails - 为什么 ActiveResource 返回哈希数组而不是对象?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8377222/

10-12 05:12