问题描述
ruby中如何将嵌套对象转成json?比如一个对象obj包含一个自定义的实例变量b如果使用to_json的话,没法将b的内容也输出来需要的是obj.to_s这样的输出,但是要是json的形式用to_yaml是可以的,但是希望直接转json
顺便问一句,to_json和to_yaml明显是同一种函数,为什么会有这样的结果差异?
问题解答
回答1:require ’oj’class A def initialize a=[1,2,3], b=’hello’@a = a@b = b endend
puts Oj::dump a, :indent => 2, :mode => :compat
Output:
{ 'a':[ 1, 2, 3 ], 'b':'hello'}