2011-03-23 73 views
0

我需要活动记录JSON转换为这样的事情:活动记录结果并转化JSON

{ 
     cols: [{id: 'task', label: 'Task', type: 'string'}, 
       {id: 'hours', label: 'Hours per Day', type: 'number'}], 
     rows: [{c:[{v: 'Work'}, {v: 11}]}, 
       {c:[{v: 'Eat'}, {v: 2}]}, 
       {c:[{v: 'Commute'}, {v: 2}]}, 
       {c:[{v: 'Watch TV'}, {v:2}]}, 
       {c:[{v: 'Sleep'}, {v:7, f:'7.000'}]} 
      ] 
} 

这是完全不同的东西to_json ActiveRecord的回报。什么是转变JSON最红宝石的方式?

回答

0

覆盖

# your_model.rb, implement an instance method to_json 
def to_json(options = {}) 
    { 
    'cols' => [{'id' => 'whateveryoulike'}], 
    'rows' => [{'id' => 'whateveryoulike'}] 
    }.to_json(options) 
end 

在模型中to_json方法记住,接受options作为参数传递给此方法,并把它传递给哈希的to_json(或任何其他to_json叫你做这里面很重要方法,就此而言)。否则,在收集JSON序列化按预期的方式方法可能无法正常使用。当然,因为你还没有给出任何细节,以你的模型以及它是如何映射到所期望的JSON响应,你将有你喜欢的实现cols和rows的代表性。

这也适用于to_xml