强制ActiveResource不从JSON转换复杂对象

时间:2015-03-20 13:35:50

标签: ruby-on-rails ruby json activeresource

ActiveResource docs表示:

  

任何复杂元素(包含其他元素的元素)都会成为它自己的对象:

# With this response:
# {"id":1,"first":"Tyler","address":{"street":"Paper St.","state":"CA"}}
#
# for GET http://api.people.com:3000/people/1.json
#
tyler = Person.find(1)
tyler.address  # => <Person::Address::xxxxx>

由于我正在检索的对象上的属性是一个应该是JSON的RGeo对象,我该如何请求不转换此属性。所以上面会变成:

tyler = Person.find(1)
tyler.address  # => {"street":"Paper St.","state":"CA"}

1 个答案:

答案 0 :(得分:0)

将其定义为serialize哈希

class Person < ActiveRecord::Base

    serialize :address, Hash
end

然后,它会将address字段视为Hash

@ object.address应该返回给你,key value