我有一个像这样的模型类
import Foundation
import SwiftyJSON
class SpecificCategoryJSON {
var _product_id: Int?
var _product_title: String?
var _product_sku: String?
var _product_image: URL?
init(items: JSON){
self._product_id = items["product_id"].int
self._product_title = items["product_title"].stringValue
self._product_sku = items["product_sku"].stringValue
let post_imgAA = items["product_image"].arrayValue
for itemsIMG in post_imgAA {
self._product_image = itemsIMG["guid"].URL
}
}
var product_id: Int {
if _product_id == nil {
_product_id = 0
}
return _product_id!
}
var product_title: String {
if _product_title == nil {
_product_title = ""
}
return _product_title!
}
var product_sku: String {
if _product_sku == nil {
_product_sku = ""
}
return _product_sku!
}
var product_image: URL {
if _product_image == nil {
let myURL = "http://www.clker.com/cliparts/d/L/P/X/z/i/no-image-icon-hi.png"
let noImage: URL = URL(string: myURL)!
_product_image = noImage
}
return _product_image!
}
}
我想使用 product_id 作为参数发送,以使用 Alamofire 发出 POST 请求。这是 POST 请求,我将 product_id 保持为静态。
class ProductDetailsManager {
//........
func printPublicGists() -> Void {
let url: String = "http://xxx/get_product_informations/"
let parameter = ["product_id": 33]
Alamofire.request(url, method: .post, parameters: parameter, encoding: URLEncoding.default, headers: nil)
.responseJSON { (response) in
guard response.result.error == nil else {
print(response.result.error!)
return
}
guard let value = response.result.value else {
print("no product to show")
return
}
print(value)
}
}
//.......
}
我想从 SpecificCategoryJSON 类中获取 product_id ,并在类 ProductDetailsManager 中使用它来进行调用。我应该怎么做,继承? 覆盖? UserDefaults.standard.set ?请帮忙。
答案 0 :(得分:0)
也许我误解了这个问题,但你应该实例化你的SpecificCategoryJSON
类并访问它的属性:
func printPublicGists() -> Void {
let url: String = "http://xxx/get_product_informations/"
let cat = SpecificCategoryJSON(items: someJSON)
let parameter = ["product_id": cat.product_id]
// ....
}