setupCoreDataStack
जब आप MagicalRecord के साथ शुरुआत कर रहे हों तो इसका उपयोग करें। विधि के अनुसार, यह आपके डिफ़ॉल्ट कोर डेटा स्टैक को सेट करेगा। ढेर के टुकड़े अच्छी तरह से जानते हैं और इसमें शामिल हैं: NSPersistentStore, NSPersistentStoreCoordinate, NSManagedObjectModel और एक डिफ़ॉल्ट NSManagedObjectContext। कोर डेटा के काम करने के लिए इनमें से प्रत्येक में से कम से कम एक को तत्काल और कॉन्फ़िगर किया जाना चाहिए। MagicalRecord एक SQLite लगातार इन/लायब्रेरी/एप्लिकेशन समर्थन // स्थित दुकान के साथ अपने ढेर कॉन्फ़िगर करने के लिए इस एक विधि। SQLite
setupAutoMigratingDefaultCoreDataStack
प्रदान करता है जब आप संस्करण अपने मॉडल, आप अपने डेटा को स्थानांतरित करने की आवश्यकता होगी। यह विधि पिछले (उपरोक्त) विधि के समान ही करेगी, लेकिन ऑटो माइग्रेशन भी सक्षम करेगी।
setupCoreDataStackWithInMemoryStore;
कभी-कभी, जैसे कि जब आप यूनिट परीक्षण लिख रहे हों, तो आप अपना ऐप समाप्त होने पर अपना डेटा दूर जाना चाहते हैं। यह विधि कोरडाटा स्टैक भी स्थापित करेगी (जैसा ऊपर बताया गया है) लेकिन SQLite स्टोर की बजाय, यह सिस्टम मेमोरी (रैम) में लगातार स्टोर बनाता है।
setupCoreDataStackWithStoreNamed:(NSString *)storeName
कभी-कभी आप उस फ़ाइल नाम को कस्टमाइज़ करना चाहते हैं जहां आपका डेटा रहता है। इस विधि पहले के रूप में ही होता है, अर्थात् कोर डेटा ढेर की स्थापना, और विशिष्ट स्थान में एक SQLite दुकान रखने, लेकिन .sqlite के बजाय, दुकान storeName.sqlite
setupCoreDataStackWithAutoMigratingSqliteStoreNamed:(NSString *)storeName
नाम पर है यह करता है उपर्युक्त विधि के समान, लेकिन ऑटो माइग्रेशन भी सक्षम है। जब आप अपने मॉडल का संस्करण बनाते हैं तो आपको ऐसा करने की आवश्यकता होगी और एक साधारण माइग्रेशन है जिसे बस सक्षम करने की आवश्यकता है।
आप Apple's Core Data Reference Documentation
पर पर कोर डेटा माइग्रेशन अधिक पढ़ सकते हैं कैसे आप MagicalRecord करने के लिए एक xcdatamodeld फ़ाइल सहयोगी करते हैं? MagicalRecord xcdatamodeld विशेषताएँ जैसे "बाहरी रिकॉर्ड फ़ाइल में स्टोर" का सम्मान करेगा? – zakdances
डिफ़ॉल्ट रूप से, MagicalRecord मर्ज किए गए मॉडल का उपयोग करेगा FromBundle: एक शून्य पैरामीटर के साथ विधि। यह एक्सकोड द्वारा प्रदान किए गए (भयानक) बॉयलरप्लेट कोड में भी है। यह स्वचालित रूप से आपके लिए इसका आंकड़ा करता है। आवश्यकता होने पर मॉडल फ़ाइल निर्दिष्ट करने के लिए अतिरिक्त सहायक हैं (यूनिट परीक्षण एक और आम जगह है जहां यह आवश्यक है) – casademora
मैं अभी भी थोड़ा उलझन में हूं ... मर्ज किए गए मॉडल FromBundle स्वचालित रूप से xcdatamodeld फ़ाइलों के लिए प्रोजेक्ट संरचना को स्कैन करेगा? यदि आपके पास एक से अधिक xcdatamodeld है तो क्या होता है? क्या उन संस्थाओं (और उनके गुण) जिन्हें आप उन xcdatamodeld फ़ाइलों में घोषित करते हैं, उन्हें NSManagedObjects से मिलान करने की आवश्यकता है जिन्हें आप MagicalRecord के लिए उपclass करते हैं? – zakdances