【发布时间】:2016-01-23 01:48:02
【问题描述】:
我在 Swift 中创建了一个对象数组,其结构如下:
var myCart:[FoodItem] = []
变量转储:
▿ 3 elements
▿ [0]: TablePinAdolfoTesting.FoodItem #0
- id: 5
- name: Taco
- cant: 2
▿ [1]: TablePinAdolfoTesting.FoodItem #1
- id: 6
- name: Burrito
- cant: 1
▿ [2]: TablePinAdolfoTesting.FoodItem #2
- id: 4
- name: Enchiladas
- cant: 3
我使用 Alamofire 从我的 API 中获取所述对象,但现在,在稍微更改它们之后,我想将其插入到我创建的新 JSON 中:
var json: JSON = ["idUser": idUser, "total_loyalty_points": totalLP, "total_price": totalPrice, "car": []]
打印的json:
{
"total_price" : 50000,
"car" : [
],
"idUser" : 58,
"total_loyalty_points" : 5000
}
我有 2 个问题...
- 出于某种原因,“汽车”被置于第二位,即使我在 JSON 声明期间将其放在最后。
-
第二个问题是我不知道如何将我的对象数组放在那个 JSON 中以获得这样的东西:
{"idUser": (int), "total_loyalty_points": (double), "total_price":(double), "car":[ { "id": (string), "name": (string), "cant": (int) } ] }
其中“汽车”是该 JSON 中的对象数组。如果可能的话,我更愿意使用 SwiftyJSON 来保持一致性,但这不是必需的。
我尝试过但不起作用的一件事如下
for object in cart.myCart{
var name = [String: String]()
name["id"] = object.id
name["name"] = object.name
json["car"] = JSON(name)
json["car"]["cant"] = JSON(object.cant)
}
它不起作用的原因是它不会在购物车中创建一个数组,它只会覆盖 JSON
谢谢。
【问题讨论】:
标签: json swift ios9 swifty-json