मेरे पास एक कोर डेटा मॉडल है जिसमें कार्य इकाई में वैकल्पिक से कई रिश्ते शामिल हैं जो बहिष्कृत डे इकाई को बहिष्कृत दिन हैं। बहिष्कृत दिन का गुण दिन है, जो एक एनएसडीएट वस्तु है। बहिष्कृत डे इकाई में कार्य इकाई के लिए एक संबंध अनिवार्य अनिवार्य है।कोर डेटा का उपयोग करते समय एक से अधिक रिश्ते के लिए एनएसपी्रेडिकेट को सही ढंग से कैसे सेट अप करें?
निर्दिष्ट दिन के लिए कार्यों को लाने के लिए, मुझे यह सुनिश्चित करने की आवश्यकता है कि निर्दिष्ट दिन किसी भी exludedDay इकाई की दिन संपत्ति के रूप में प्रकट नहीं होता है।
मैं के बावजूद क्या प्रलेखन कहते हैं, बिल्कुल काम नहीं करता
NSPredicate *dayIsNotExcludedPredicate = [NSPredicate predicateWithFormat: @"ALL excludedDays.day != %@", today];
की कोशिश कर रहा हालांकि शुरू किया, और आवेदन के लिए एक अपवाद फेंकता है: न आया हुआ अपवाद 'NSInvalidArgumentException', कारण की वजह से उनका समापन एप्लिकेशन: असमर्थित विधेय '।
इस मंच में एक ही प्रश्न पोस्ट करने के बाद, मैं विभिन्न लोगों की मदद से निम्नलिखित विधेय वसीयत करने में सक्षम था: यह पहली बार में काम किया
NSPredicate * dayIsNotExcludedPredicate = [NSPredicate predicateWithFormat: @"[email protected] == 0 || ([email protected] > 0 && NONE excludedDays.day == %@))", today];
, मैं सिर्फ पता चला है कि यह केवल काम करता है जब बहिष्कृत डे इकाई में केवल एक दिन होता है। जैसे ही बहिष्कृत डे इकाई में एक ही कार्य के लिए एक से अधिक दिन होते हैं, यह अनुमान काम करना बंद कर देता है। नतीजतन, एक दिन के लिए एक कार्य का चयन किया जाता है, भले ही दिन बहिष्कृत डे इकाई में दिन के रूप में दिखाई देता है, जो निश्चित रूप से गलत है। समस्या एनएसडीएटी ऑब्जेक्ट होने के बाद संपत्ति दिन से जुड़ी नहीं है: संबंधित एनएसएसटींग के साथ दिन को प्रतिस्थापित करना या एक पूर्णांक के साथ समकक्ष रूप से, मुझे अभी भी एक ही समस्या और गलत व्यवहार का सामना करना पड़ता है।
इस मामले में भविष्यवाणी को लागू करने का सही तरीका क्या है? कोर डेटा का उपयोग करते समय यह किसी भी समग्र ऑपरेटर से संबंधित बग हो सकता है? अग्रिम धन्यवाद, यह अब मुझे पागल कर रहा है।
शायद आप जानते हैं कि SSEQUERY के साथ अभिव्यक्ति को NSExpresion और NSComparisonPredicate कक्षाओं के साथ कैसे लिखना है? http://stackoverflow.com/questions/2006927/whats-better-way-to-build-nspredicate-with-to-many-deep-relationships धन्यवाद – Victor
: अपने जवाब के साथ, मैं मेरे सवाल का फैसला किया वास्तव में उपयोगी, इस उत्तर के लिए बहुत बहुत धन्यवाद। – Maria