Ruby on rails 是否可以在散列上运行.to_json,但不让它以前转义.to_json';什么样的字符串?
我们有一个缓存层来存储字符串的json输出。我希望能够将这些字符串放入一个数组中,然后通过.to_json将其转换为json,但它会转义所有以前编码的json。有没有办法避免这种情况 下面是一个示例操作来解释:Ruby on rails 是否可以在散列上运行.to_json,但不让它以前转义.to_json';什么样的字符串?,ruby-on-rails,json,active-model-serializers,Ruby On Rails,Json,Active Model Serializers,我们有一个缓存层来存储字符串的json输出。我希望能够将这些字符串放入一个数组中,然后通过.to_json将其转换为json,但它会转义所有以前编码的json。有没有办法避免这种情况 下面是一个示例操作来解释: def index a={name:"jon", email:"jon@domain.com"}.to_json r={} r[:users]=[] r[:users] << a render json: r.to_json end 但我想: {"use
def index
a={name:"jon", email:"jon@domain.com"}.to_json
r={}
r[:users]=[]
r[:users] << a
render json: r.to_json
end
但我想:
{"users":["{"name":"jon","email":"jon@domain.com"}"]}
虽然我没有在这里展示它,但我愿意使用ActiveModelSerializer(0.8分支)
编辑
一种可能是执行JSON.parse,但显然,这会对性能造成一些影响,我希望避免这种影响。您正在将一个JSON对象转换为另一个JSON对象。。试着替换
a={name:"jon", email:"jon@domain.com"}.to_json
借
好的,所以我要展示这一点,因为我们在redis中缓存JSON,所以它是一个JSON字符串。只是为了清楚起见才展示的。我不想,但可以解析它,但这会带来它自己的问题。它确实绕过了生成这些对象时执行的20个sql调用
a={name:"jon", email:"jon@domain.com"}.to_json
a={name:"jon", email:"jon@domain.com"}