我需要为我的数据创建一个 json 数组。但在我的数据模型中,有些字段是不必要的,有些字段名称需要为 json-array 更改。因此,我创建了一个简单的函数来将一个对象转换为我需要使用的 json 格式:
def testMethod
{title: self.title, start: self.start_date, end: self.end_date, resource: Resource.find(self.resource_id).name}.to_json
end
所以这个 json 对象的输出是:
{:title=>"Test", :start=>Thu, 27 Dec 2012 10:25:00 UTC +00:00, :end=>Thu, 27 Dec 2012 10:25:00 UTC +00:00, :resource=>"Resource1"}
但是当我使用以下循环迭代所有对象时:
@calJson = []
@calendars.each do |cal|
@calJson.push(cal.testMethod)
end
我会有这个无用的字符串:
["{\"标题\":\"测试\",\"开始\":\"2012-12-27T10:25:00Z\",\"结束\":\"2012-12-27T10:25 :00Z\",\"resource\":\"Resource1\"}", "{\"title\":\"ikincii\",\"start\":\"2012-12-27T10:25:00Z \",\"end\":\"2012-12-27T10:25:00Z\",\"resource\":\"Resource2\"}", "{\"title\":\"b da son \",\"开始\":\"2012-12-27T10:27:00Z\",\"结束\":\"2012-12-27T10:27:00Z\",\"资源\":\ "资源 1\"}"]
而我想要这样的东西:
[ {标题:'午餐 12.15-14.45',开始:新日期(y,m,d,12,15),结束:新日期(y,m,d,14,45),
resource: 'resource1' }, { title: 'Meeting', start: new Date(y, m, d, 10, 30), end: new Date(y, m, d+4, 11, 00), resource: 'resource1' } ]
我该怎么做?
谢谢。