我的模型给了我一个字符串数组作为json,并且我需要一个对象数组,以便在客户端正确运行我的api。在我的模型我定义为字符串数组对象阵列
def as_json(options={})
super(:only => [:price, :available, :location_id, :beer_id], :methods => [:name, :brewery, :style, :label_url, :description, :id])
end
这是给我的回应
{"available":"on","beer_id":1,"created_at":"2013-05-31T16:45:09Z","description":"Good","id":1,"location_id":1,"price":"3.0","size":"16.0","updated_at":"2013-05-31T16:45:09Z"}
这显然是缺少[ ]
表明它是对象的数组的JSON。有没有简单的方法将这个字符串数组转换为一个对象数组?
编辑:我的原始响应这是工作的罚款是
[{"available":"on","beer_id":1,"created_at":"2013-05-31T16:45:09Z","description":"Good","id":1,"location_id":1,"price":"3.0","size":"16.0","updated_at":"2013-05-31T16:45:09Z"}]
我的iOS应用程序崩溃,因为它并不认为,当前响应类型的NSDictionary的,因为它的NSString。环顾四周后,似乎我对Rails应用程序进行了一些更改,改变了json响应。我唯一的线索是当我看着什么在工作,什么现在不起作用时丢失的括号。
你是什么意思的数组对象? JSON本质上是一种将数据存储在字符串中的方式,所以如果您希望能够存储Time对象等,它不会发生。编辑你的问题以包含所需行为的例子,并且给你一个答案会更容易。 – XanderStrike