ruby-on-rails - 为什么 ActiveResource 返回的是哈希数组而不是对象?

标签 ruby-on-rails ruby-on-rails-3 activeresource

我刚刚开始构建一个 api 和使用 ActiveResource 从 api 消费的应用程序。我将通过编辑详细说明,但我最初的问题是:

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

第一个问题:为什么?

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

最佳答案

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

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

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

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

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

相关文章:

ruby-on-rails - 使用 ActiveResource 获取成员 URL 操作

ruby-on-rails - 提示的事件资源需要散列

ruby-on-rails - 应该如何链接 json 响应,以便 ActiveResource 可以从日期生成 DateTime 对象?

javascript - jQuery 事件处理程序无法正常工作

sql - 查找任何 3 个公共(public)属性的重复记录

ruby-on-rails - 定制 Camel 化

ruby-on-rails-3 - Rake 中模型引用的未初始化常量错误

ruby-on-rails - 我应该从 rails 2.3 升级到 3+ 还是等到 rails 4 发布后再升级?

ruby-on-rails - ruby rails : Routing for a tree hierarchy of places

ruby-on-rails-3 - ruby /导轨 : where is the code to generate scaffolds