आप ऐसा नहीं कर सकते हैं, यही वह नहीं है जो स्विफ्टजसन के लिए बनाया गया है। SwiftyJSON उद्देश्य-सी की तुलना में जेएसओएन के बेहतर पार्सिंग के लिए स्विफ्ट की विशेषताओं का उपयोग कर रहा है, यह जेएसओएन को क्रमबद्ध करने के लिए कोई मूल्य नहीं लाएगा।
अपने उद्देश्य के लिए, आपको अपने NSManagedObject
ऑब्जेक्ट से शब्दकोश/सरणी बनाना होगा। तो फिर इस तरह JSON serializer के साथ सिर्फ Alamofire
का उपयोग करें:
let parameters = event.toJSON() // create Dictionary from NSManagedObject
Alamofire.request(.POST, "https://httpbin.org/post", parameters: parameters, encoding: .JSON)
JSON शब्दकोश में क्रमबद्धता - अगर आप दोनों में से NSManagedObject
उपवर्गों है - Activity
जहां Event
Activity
को एक-से-कई संबंध नहीं Event
और, मैं की तरह जाना होगा यह:
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
]
}
}
स्रोत
2015-11-28 05:40:24
स्विफ्टजसन सरल जेसन सीरियलाइज़र/deserializer है। आपको यह सुनिश्चित करना होगा कि आपके पास सही डेटा है। संबंधों के लिए, यह आपके काम को क्रमबद्ध करने के लिए तैयार करना है (यानी इसे एक शब्दकोश या कुछ प्रकार बनाते हैं)। आप जो पूछ रहे हैं वह कोर डेटा और स्विफ्टजेसन के बीच कड़े एकीकरण है, जो नहीं हैं। –
@ user1107173 JSON से प्रबंधित प्रबंधित ऑब्जेक्ट में आप कैसे प्रबंधित करते हैं? यह पूर्ववत है ... – JAHelia
@JAHelia मुझे नहीं लगता कि आप कर सकते हैं। आपने इसे JSON से रूपांतरित कर लिया है और मैपिंग मैन्युअल रूप से किया है। – user1107173