在rails 中object to_json 之后是有问题的。解决办法有两种:
1. ActiveRecord::Base.include_root_in_json = false
这个设置是全局的,影响很大。
2. 写一个通用的犯法处理数据.
def obj_to_hash(obj)
if obj.class.to_s == 'Array'
h = []
obj.each{|o|h.push(o.attributes)}
return h
else
return obj.attributes
end
end
处理之后的数据如果要发给前端, 可以如下处理下header:
##
# after_filter
#
def set_charset
headers["Content-Type"] ||= "application/json; charset=UTF-8"
end