假设我有一个User
对象:
class User: Mappable {
var username: String?
var age: Int?
var weight: Double!
var array: [Any]?
var dictionary: [String : Any] = [:]
var bestFriend: User? // Nested User object
var friends: [User]? // Array of Users
var birthday: Date?
required init?(map: Map) {
}
// Mappable
func mapping(map: Map) {
username <- map["username"]
age <- map["age"]
weight <- map["weight"]
array <- map["arr"]
dictionary <- map["dict"]
bestFriend <- map["best_friend"]
friends <- map["friends"]
birthday <- (map["birthday"], DateTransform())
}
}
我的Json
包含该对象的数组:[User]
即使没有特定的字段名,我如何映射此数组?这就是我所做的:
class Users: Mappable {
var users: [User]?
required init?(map: Map) {
}
// Mappable
func mapping(map: Map) {
//What have I to put here??
}
}
答案 0 :(得分:2)
你必须使用mapArray而不是map。这很简单。
您只需要创建新的用户类,只有用户类就足以完成此任务
以这种方式使用
let arrUser = Mapper<User>().mapArray(JSONObject: JSONResponse.rawValue)