का उपयोग कर सरणी अनुक्रमणिका द्वारा क्रमबद्ध करें मेरे पास आईडी की एक सरणी है: [INT]। अब मैं इन ऑब्जेक्ट्स को चुनने के लिए सभी ऑब्जेक्ट्स चुनना चाहता हूं लेकिन आईडी सरणी में आईडी के क्रम का पालन करने की आवश्यकता है।रीयल और एनएसपी्रेडिकेट
let IDs = [2, 6, 3, 4, 10, 9]
let predicate = NSPredicate(format: "id IN %@", IDs)
let objects = realm.objects(Item.self).filter(predicate)
लेकिन अंत में, वस्तुओं को आईडी के साथ अलग तरीके से आदेश दिया गया था। क्या कोई तरीका है कि मैं इस ऑब्जेक्ट को सही क्रम में सॉर्ट कर सकता हूं?
यह दृष्टिकोण तरह कार्रवाई करने के लिए क्वेरी से मेल हर एक वस्तु की स्विफ्ट वर्ग उदाहरणों अमल में लाना होगा। इस उत्सुक भौतिकरण से बचने के लिए 'results.sorted (_ :)' का उपयोग करें। हालांकि, इस दृष्टिकोण को रीयलम द्वारा समर्थित कस्टम सॉर्टिंग एल्गोरिदम लागू करने के लिए अच्छा (आवश्यक भी) है। – jpsim
धन्यवाद। यह काम। हालांकि, हमें .sort का उपयोग करने से पहले सभी ऑब्जेक्ट्स को पूरा करने की आवश्यकता होगी। Results.sorted आईडीएस सरणी में आईडी के क्रम का पता लगाने में सक्षम नहीं है। – mashix
प्रश्न कस्टम सॉर्टिंग एल्गोरिदम के लिए पूछे गए, इसलिए वस्तुओं को भौतिक बनाने के लिए कोई रास्ता नहीं है। – joern