SwiftyJSONを使用すると、オブジェクトをJSON
からSwift
に変換できることを知っています。
SwiftyJSONでは戻ることができますか?つまり、関係を持つNSManagedObject
sを取得し、それをJSONに変換しますか?
例をお願いします。
あなたはそれをすることはできません、それはSwiftyJSONのために作られているものではありません。 SwiftyJSONは、objective-cと比較してJSONの解析を改善するために、Swiftの機能を使用しているだけであり、JSONへのシリアル化の値はありません。
目的のために、NSManagedObject
オブジェクトから辞書/配列を作成する必要があります。次に、次のようなJSONシリアライザーでAlamofire
だけを使用します。
let parameters = event.toJSON() // create Dictionary from NSManagedObject
Alamofire.request(.POST, "https://httpbin.org/post", parameters: parameters, encoding: .JSON)
JSONディクショナリへのシリアル化– NSManagedObject
の2つのサブクラスがある場合– Event
とActivity
ここで、Event
はActivity
、私はこのようになります:
extension Event {
func toJSON() -> Dictionary<String, AnyObject> {
return [
"id": self.id,
"name": self.name,
"startDate": self.startDate.GMTFormatString,
"endDate": self.endDate.GMTFormatString,
"activities": self.activities.map({ $0.toJSON() })
]
}
}
extension Activity {
func toJSON() -> Dictionary<String, AnyObject> {
return [
"id": self.id,
"name": self.name
]
}
}