2016-12-09 2 views
0

私はクラスSingleUser持っている:私は私のWebサービスにAlamofireでそれを渡したいSwiftの配列エントリに基づいてalamofireクエリを構築するにはどうすればよいですか?

let blockedUsers: [SingleUser] = NSKeyedUnarchiver.unarchiveObject(with: 
        (defaults.object(forKey: "myUsers") as! Data)) as! [SingleUser] 

class SingleUser: NSObject, NSCoding { 

    var username: String 
    var display_name: String 
    var facebook_username: String 
    var device_id: String 
    . 
    . 
    . 
} 

を、私はそれらのユーザーの配列を持っています。

私はすでにいくつかのパラメータが定義されています:

var params = [ 
    "long": lon as AnyObject, 
    "lat": lat as AnyObject, 
    "startDate": DateCalc.convertValueToDate(defaults.float(forKey: "startDate")) as AnyObject, 
    "endDate": DateCalc.convertValueToDate(defaults.float(forKey: "endDate")) as AnyObject 
] as [String: AnyObject] 

、今私は、例えば、何とか私のユーザーを追加したいです以下のように:

"users" = { 
     { "username" = "xxxx", 
     "display_name" = "xxxx", 
     "facebook_username" = "xxxx", 
     "device_id" = "xxxx" 
     }, 
     { "username" = "yyyy", 
     "display_name" = "yyyy", 
     "facebook_username" = "yyyy", 
     "device_id" = "yyyy" 
     }, 
     . 
     . 
     . 
     } 

私はその配列を反復処理することができる方法を教えて、私のparams配列に追加しできますか?

答えて

0
class SingleUser: NSObject, NSCoding { 

    var username: String 
    var display_name: String 
    var facebook_username: String 
    var device_id: String 

    var jsonFormat: [String: AnyObject] { 
     return ["username": username, 
       "display_name": display_name, 
       "facebook_username": facebook_username, 
       "device_id": device_id] 
    } 
} 

そして:ユーザー "[`:

var users = [[String: AnyObject]]() 
blockedUsers.forEach { user in 
    users.append(user.jsonFormat) 
} 
params["users"] = users 
+0

は@Bartが、それはほとんど動作します...私はあなたが提案し何をしたと、私は 'プリント(のparams)を書いた'と私は見ていただきありがとうございます":({'と残りの部分は...なぜ私はこの奇妙な遅延ns配列を持っていますか? – user3766930

関連する問題