从 Swift 中的模型 class 中提取值
Extract values from an model class in Swift
我正在将我选择的数据从列表传递到模型 class,其中包含相应的内容。我有 itemName 和 itemPrice 和 itemDescription,我在 class 中传递给我的模型变量并在另一个 class 中访问它。现在我想从该模型中获取值并将其作为参数传递给服务。我的参数中有一些键,我想在其中传递这些值,这些值是动态的。这是我的模型 class,
class Item : NSObject {
var totalPrice : String?
var numberOfItems : Int = 1
var itemPrice : String?
var itemName : String?
var itemID : String?
var itemId : String?
var itemDdescription : String?
}
class ItemDataSource : NSObject {
var items = [Item]()
static let sharedInstance = ItemDataSource()
private override init() {}
}
这就是我在模型中传递值的方式,
let item = Item()
item.totalPrice = String(result)
item.itemPrice = String(result)
item.itemDdescription = itemDescription
item.itemName = itemName
item.itemID = itemID
item.itemId = itemId
ItemDataSource.sharedInstance.items.append(item)
这是我的服务中使用的参数格式,
"cart": [
[
"childs": [
[
"addon_cat_id": "0",
"id": ItemDataSource.sharedInstance.items[0].itemId!,
"name": ItemDataSource.sharedInstance.items[0].itemName!,
"next_move_id": "",
"price": ItemDataSource.sharedInstance.items[0].itemPrice!,
"sort_order": "",
"type": "string"
]
],
"name": ItemDataSource.sharedInstance.items[0].itemName!,
"price": ItemDataSource.sharedInstance.items[0].itemPrice!,
"productid": ItemDataSource.sharedInstance.items[0].itemId!,
"qty": 2,
"description": ItemDataSource.sharedInstance.items[0].itemDdescription!
]
],
我想从我的模型 class 中传递参数中的所有内容,并且值应该转到它们各自的键中 parameters.I 我很困惑,我该如何在它们各自的键中传递它当我通过索引 0 传递到这里时,它仅将 0 索引值传递给参数中的子项。我怎样才能传递模型 class 中的全部内容?如果我的模型中有两个项目 class 当我将数据传递给 it.Chid 时它应该在我的参数中创建两个子项是一个进入参数的数组。如何做到这一点?
你可以试试这个:
class Item : NSObject {
var totalPrice : String?
var numberOfItems : Int = 1
var itemPrice : String?
var itemName : String?
var itemID : String?
var itemDdescription : String?
}
class ItemDataSource : NSObject {
var items = [Item]()
static let sharedInstance = ItemDataSource()
private override init() {}
}
var result = 20
var itemDescription = "itemDescription"
var itemName = "itemName"
var itemID = "1"
let item = Item()
item.totalPrice = String(result)
item.itemPrice = String(result)
item.itemDdescription = itemDescription
item.itemName = itemName
item.itemID = itemID
ItemDataSource.sharedInstance.items.append(item)
let noOFItems = ItemDataSource.sharedInstance.items.count
var dict = [Dictionary<String, Any>]()
for i in 0 ..< noOFItems {
var child: [String: Any] = ["addon_cat_id": "0",
"id": ItemDataSource.sharedInstance.items[i].itemID!,
"name": ItemDataSource.sharedInstance.items[i].itemName!,
"next_move_id": "",
"price":ItemDataSource.sharedInstance.items[i].itemPrice!,
"sort_order": "",
"type": "string"]
var childs:[String: Any] = ["childs": child, "name": ItemDataSource.sharedInstance.items[i].itemName!,
"price": ItemDataSource.sharedInstance.items[i].itemPrice!,
"productid": ItemDataSource.sharedInstance.items[i].itemID!,
"qty": 2,
"description": ItemDataSource.sharedInstance.items[i].itemDdescription!]
dict.append(childs)
}
let cart = ["cart": dict]
print(cart)
我正在将我选择的数据从列表传递到模型 class,其中包含相应的内容。我有 itemName 和 itemPrice 和 itemDescription,我在 class 中传递给我的模型变量并在另一个 class 中访问它。现在我想从该模型中获取值并将其作为参数传递给服务。我的参数中有一些键,我想在其中传递这些值,这些值是动态的。这是我的模型 class,
class Item : NSObject {
var totalPrice : String?
var numberOfItems : Int = 1
var itemPrice : String?
var itemName : String?
var itemID : String?
var itemId : String?
var itemDdescription : String?
}
class ItemDataSource : NSObject {
var items = [Item]()
static let sharedInstance = ItemDataSource()
private override init() {}
}
这就是我在模型中传递值的方式,
let item = Item()
item.totalPrice = String(result)
item.itemPrice = String(result)
item.itemDdescription = itemDescription
item.itemName = itemName
item.itemID = itemID
item.itemId = itemId
ItemDataSource.sharedInstance.items.append(item)
这是我的服务中使用的参数格式,
"cart": [
[
"childs": [
[
"addon_cat_id": "0",
"id": ItemDataSource.sharedInstance.items[0].itemId!,
"name": ItemDataSource.sharedInstance.items[0].itemName!,
"next_move_id": "",
"price": ItemDataSource.sharedInstance.items[0].itemPrice!,
"sort_order": "",
"type": "string"
]
],
"name": ItemDataSource.sharedInstance.items[0].itemName!,
"price": ItemDataSource.sharedInstance.items[0].itemPrice!,
"productid": ItemDataSource.sharedInstance.items[0].itemId!,
"qty": 2,
"description": ItemDataSource.sharedInstance.items[0].itemDdescription!
]
],
我想从我的模型 class 中传递参数中的所有内容,并且值应该转到它们各自的键中 parameters.I 我很困惑,我该如何在它们各自的键中传递它当我通过索引 0 传递到这里时,它仅将 0 索引值传递给参数中的子项。我怎样才能传递模型 class 中的全部内容?如果我的模型中有两个项目 class 当我将数据传递给 it.Chid 时它应该在我的参数中创建两个子项是一个进入参数的数组。如何做到这一点?
你可以试试这个:
class Item : NSObject {
var totalPrice : String?
var numberOfItems : Int = 1
var itemPrice : String?
var itemName : String?
var itemID : String?
var itemDdescription : String?
}
class ItemDataSource : NSObject {
var items = [Item]()
static let sharedInstance = ItemDataSource()
private override init() {}
}
var result = 20
var itemDescription = "itemDescription"
var itemName = "itemName"
var itemID = "1"
let item = Item()
item.totalPrice = String(result)
item.itemPrice = String(result)
item.itemDdescription = itemDescription
item.itemName = itemName
item.itemID = itemID
ItemDataSource.sharedInstance.items.append(item)
let noOFItems = ItemDataSource.sharedInstance.items.count
var dict = [Dictionary<String, Any>]()
for i in 0 ..< noOFItems {
var child: [String: Any] = ["addon_cat_id": "0",
"id": ItemDataSource.sharedInstance.items[i].itemID!,
"name": ItemDataSource.sharedInstance.items[i].itemName!,
"next_move_id": "",
"price":ItemDataSource.sharedInstance.items[i].itemPrice!,
"sort_order": "",
"type": "string"]
var childs:[String: Any] = ["childs": child, "name": ItemDataSource.sharedInstance.items[i].itemName!,
"price": ItemDataSource.sharedInstance.items[i].itemPrice!,
"productid": ItemDataSource.sharedInstance.items[i].itemID!,
"qty": 2,
"description": ItemDataSource.sharedInstance.items[i].itemDdescription!]
dict.append(childs)
}
let cart = ["cart": dict]
print(cart)