2010-03-26 15 views
9

मेरे पास 2 इकाइयां, कार्य और सूची है। प्रत्येक कार्य में "सूची" नामक सूची वस्तु के साथ एक-एक संबंध होता है, और सूची के साथ एक व्यस्त संबंध होता है, जिसमें कार्य "कार्य" नामक कार्य के साथ कई संबंध होते हैं।कोर डेटा - कई रिश्तों को फ़िल्टर करने के लिए एनएसपीडिकेट

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"list=%@", theList]; 
[fetchRequest setPredicate:predicate]; 

(जहां "theParent" एक सूची वस्तु लिए एक संदर्भ है):

मैं सभी कार्य वस्तुओं है कि एक निर्धारित सूची के हैं पाने के लिए एक NSPredicate के साथ एक लाने का अनुरोध उपयोग करने के लिए कोशिश कर रहा हूँ। हालांकि यह कोई प्राप्त वस्तुओं को वापस नहीं करता है। अगर मैं भविष्यवाणी करता हूं, तो वस्तुओं को वापस कर दिया जाता है (इसलिए मुझे पता है कि वे मौजूद हैं, और NSLogging theList द्वारा मुझे पता है कि इसमें इसके साथ जुड़े कार्य वस्तुएं हैं)।

धन्यवाद

उत्तर

11

क्या यह आपके भविष्य में एक साधारण टाइपो हो सकता है?

आप "सूची =% @" जब मुझे लगता है कि तुम क्या वास्तव में चाहते हैं कि "सूची ==% @"

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"list == %@", theList]; 
[fetchRequest setPredicate:predicate]; 
+3

"=" संपत्ति के लिए काम करता है लेकिन संबंध। – zsong

+4

खारिसन और/या @ एसज़ा: क्या आप स्पष्ट कर सकते हैं कि आपका क्या मतलब है? [एनएसपीडिकेट दस्तावेज] (https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/Predicates/Articles/pSyntax.html#//apple_ref/doc/uid/TP40001795-215832) दावा करता है कि '= 'और '==' अनुमानित प्रारूप तारों में उपयोग किए जाने पर 100% समतुल्य होते हैं। क्या कोई अनियंत्रित अंतर है? – Quuxplusone

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