मैं कोरडाटा persistentStore में डेटा का एक सेट आयात करने की कोशिश कर रहा हूं। यह केवल पढ़ने वाला डेटा है जो उपयोगकर्ता को रन-टाइम पर प्रस्तुत किया जाएगा।कोरडाटा एक से कई और व्यस्त रिश्ते की समस्या
मेरे पास "श्रेणी" नामक एक इकाई है जिसमें "आइटम" नामक इकाई के साथ एक से अधिक संबंध हैं, जो बदले में एक श्रेणी के साथ एक व्यस्त संबंध है।
जैसा कि मैं संदर्भ में आइटम जोड़ता हूं, मैं उन्हें सही श्रेणी से कैसे जोड़ूं? मैं SQLite डीबी में देख सकता हूं कि यह आइटम तालिका में एक श्रेणी फ़ील्ड जोड़कर किया जाता है, और शायद रिलेशनशिप के लिए श्रेणियों प्राथमिक कुंजी का उपयोग करता है। लेकिन पीके पीछे के दृश्य हैं ... कनेक्शन बनाने के लिए कोई तरीका है?
मैं अपने श्रेणी वर्ग आइटम जोड़ने के लिए CoreData द्वारा उत्पन्न तरीकों देखते हैं कि में देखते हैं, लेकिन मैं यह सोचते हैं कि इन alos के पीछे के दृश्य तरीकों कि CoreData संबंधों को बनाए रखने के लिए अनुमति देते हैं:
@interface Category (CoreDataGeneratedAccessors)
- (void)addItemObject:(Item *)value;
- (void)removeItemObject:(Item *)value;
- (void)addItems:(NSSet *)value;
- (void)removeItems:(NSSet *)value;
@end
मैंने प्रोग्रामिंग मार्गदर्शिका में पढ़ा है कि कोरडाटा स्वचालित रूप से रिश्ते के दूसरी तरफ का ख्याल रखता है, लेकिन मैं यह नहीं समझ सकता कि किसी श्रेणी के प्रारंभिक लिंक को मैं आइटम कैसे जोड़ता हूं।
धन्यवाद
जेके
धन्यवाद, Unforgiven। मैंने पहले से ही किसी अन्य बोर्ड पर किसी अन्य पोस्ट से यह पता लगाया था, लेकिन आपका जवाब घंटी के रूप में स्पष्ट है। इच्छा एप्पल दस्तावेज़ बेहतर थे! अब मुझे सीखना होगा कि किसी दिए गए श्रेणी के लिए आइटम कैसे पुनर्प्राप्त करें और मैं घर मुक्त हूं! जेके – Alpinista
आपको आइटम इकाई से वस्तुओं को लाने के लिए उपयोग किए जाने वाले प्राप्त अनुरोध पर एनएसपी्रेडिकेट को संबद्ध करने की आवश्यकता है। यदि आपकी श्रेणी इकाई श्रेणी के नाम को संपत्ति के रूप में संग्रहीत करती है, तो आप आइटम से श्रेणी में एक-एक रिश्ते का उपयोग करते हैं: NSPredicate * predicate = [NSPredicate predicateWithFormat: @ "category.name LIKE% @", yourCategoryNameStringHere]; बस इस अनुमान को प्राप्त करने के लिए अनुरोध करें जिसे आप आइटम इकाई से वस्तुओं को लाने के लिए उपयोग करते हैं। –
फिर से धन्यवाद, Unforgiven। मैंने पाया कि आप दूसरी दिशा से भी जा सकते हैं: यदि आपके पास श्रेणी है, तो आप श्रेणी की वस्तुओं की संपत्ति के एनएसएससेट से आइटमों की एक श्रृंखला प्राप्त कर सकते हैं। – Alpinista