在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