2015-05-28 5 views
10

से सभी डेटा हटाएं इससे पहले कि मैं अपने प्रश्न में बहुत दूर हूं। मेरा लक्ष्य, जो आपके उत्तरों को प्रभावित कर सकता है, क्लाउड में अब Object डेटा को निकालना है।विशिष्ट दायरे ऑब्जेक्ट स्विफ्ट

तो अगर मैं एक सरणी ["one", "two", "three"]

तो अपने सर्वर में मैं हटाने "two"

मैं परिवर्तन अद्यतन करने के लिए मेरी दायरे चाहते हैं।

मुझे लगता है कि यह करने का सबसे अच्छा तरीका विशिष्ट Object में सभी डेटा को हटाना है, फिर नया डेटा डाउनलोड करने के लिए मेरा आरईएसटी एपीआई कॉल करें। यदि कोई बेहतर तरीका है, तो कृपया मुझे बताएं।

ठीक है तो मेरी समस्या यहां है।

मैं एक वस्तु Notifications()

हर बार मेरी REST API का कहा जाता है इससे पहले कि यह कुछ भी डाउनलोड करता है मैं इस चला रहा हूँ:

let realm = Realm() 
let notifications = Notifications() 
realm.beginWrite() 
realm.delete(notifications) 
realm.commitWrite() 

मैं इस त्रुटि मिलती है चलाने के बाद: Can only delete an object from the Realm it belongs to.

तो

मैंने इस तरह कुछ करने की कोशिश की:

for notification in notifications { 
    realm.delete(notification) 
} 
realm.commitWrite() 

मुझे एक्सकोड में त्रुटि मिली यह है: "Type Notifications does not conform to protocol 'SequenceType'

वास्तव में यहां से कहां जाना है।

बस क्षेत्र को समझने की कोशिश कर रहा है। पूरी तरह से नया इसे करने के लिए

नोट: realm.deleteAll() काम करता है, लेकिन मैं नहीं चाहता कि मेरी दायरे के सभी नष्ट कर दिया, चाहते हैं तो बस कुछ Objects

उत्तर

23

आप इस के लिए देख रहे:

let realm = Realm() 
let deletedValue = "two" 
realm.write { 
    let deletedNotifications = realm.objects(Notifications).filter("value == %@", deletedValue) 
    realm.delete(deletedNotifications) 
} 

या शायद यह:

let realm = Realm() 
let serverValues = ["one", "three"] 
realm.write { 
    realm.delete(realm.objects(Notifications)) // deletes all 'Notifications' objects from the realm 
    for value in serverValues { 
    let notification = Notifications() 
    notification.value = value 
    realm.add(notification) 
    } 
} 

हालांकि आदर्श रूप में, आप एक प्राथमिक कुंजी Notifications पर इतना है कि आप बस अद्यतन कर सकते हैं उन मौजूदा वस्तुओं चूहे की स्थापना होगी उसे अपने सभी स्थानीय वस्तुओं को न केवल सभी (या लगभग) को फिर से बनाने के लिए अत्यधिक दृष्टिकोण लेने से।

संबंधित मुद्दे