SORU
16 Ocak 2012, PAZARTESİ


Model mağaza açmak için kullanılan bir mağaza oluşturmak için kullanılan ile uyumlu değil

Böyle büyük mükafat 4.2, sonra NSManagedObject sınıfta (yeni varlığı işaret ediyor) yeni bir varlık ekledi yükseltmeden sonra böyle büyük mükafat 3.2 ve Core Data model oluşturdum.

İlk iş, eskisinin aynı grupta yer değil çünkü garip görünüyor. İşte benim böyle büyük mükafat 4.2 resmi (AlkitabDB Güncellemelerinden içinde geçerli böyle büyük mükafat sürümünden yeni bir EndeDB 3.2, benim yarattığım bir(4.2):

the new entity do not grouped in xdatamodel

İkincisi, ben bıraktım, sonra girdim ikinci varlık (yeni) aynı şekilde ilk varlık (eski), ve hata başlıklı görüntülenir.

İşte hata:

2012-01-16 21:13:38.496 iHuria[55953:207] Unresolved error Error Domain=NSCocoaErrorDomain Code=134100 "The operation couldn’t be completed. (Cocoa error 134100.)" UserInfo=0x8829cd0 {metadata=<CFBasicHash 0x882a370 [0x1839b38]>{type = immutable dict, count = 7,
entries =>
    2 : <CFString 0x8829b90 [0x1839b38]>{contents = "NSStoreModelVersionIdentifiers"} = <CFArray 0x8829ff0 [0x1839b38]>{type = immutable, count = 0, values = ()}
    4 : <CFString 0x8829bc0 [0x1839b38]>{contents = "NSPersistenceFrameworkVersion"} = <CFNumber 0x8829770 [0x1839b38]>{value =  320, type = kCFNumberSInt64Type}
    6 : <CFString 0x8829bf0 [0x1839b38]>{contents = "NSStoreModelVersionHashes"} = <CFBasicHash 0x882a080 [0x1839b38]>{type = immutable dict, count = 1,
entries =>
    0 : <CFString 0x882a010 [0x1839b38]>{contents = "AlkitabDB"} = <CFData 0x882a030 [0x1839b38]>{length = 32, capacity = 32, bytes = 0xd02ac5f8be6ab0b39add450aca202ac0 ... 3d45d462998d2ccd}
}

    7 : <CFString 0x10e3aa8 [0x1839b38]>{contents = "NSStoreUUID"} = <CFString 0x8829e60 [0x1839b38]>{contents = "4F2EE7FF-463B-4055-BBED-8E603CDBDF59"}
    8 : <CFString 0x10e3948 [0x1839b38]>{contents = "NSStoreType"} = <CFString 0x10e3958 [0x1839b38]>{contents = "SQLite"}
    9 : <CFString 0x8829c40 [0x1839b38]>{contents = "NSStoreModelVersionHashesVersion"} = <CFNumber 0x6b1c7c0 [0x1839b38]>{value =  3, type = kCFNumberSInt32Type}
    10 : <CFString 0x8829c70 [0x1839b38]>{contents = "_NSAutoVacuumLevel"} = <CFString 0x882a0c0 [0x1839b38]>{contents = "2"}
}
, reason=The model used to open the store is incompatible with the one used to create the store}, {
    metadata =     {
        NSPersistenceFrameworkVersion = 320;
        NSStoreModelVersionHashes =         {
            AlkitabDB = <d02ac5f8 be6ab0b3 9add450a ca202ac0 ebd1e860 cbb578c2 3d45d462 998d2ccd>;
        };
        NSStoreModelVersionHashesVersion = 3;
        NSStoreModelVersionIdentifiers =         (
        );
        NSStoreType = SQLite;
        NSStoreUUID = "4F2EE7FF-463B-4055-BBED-8E603CDBDF59";
        "_NSAutoVacuumLevel" = 2;
    };
    reason = "The model used to open the store is incompatible with the one used to create the store";
}

Çözüm için önce baktım ve simülatör appliation kaldırmak ve uygulamayı yeniden çalıştırın ve işe yaramadı keşfetti. Herkes bu sorun için bir çözüm biliyor mu? Yardım lütfen.

CEVAP
4 Temmuz 2013, PERŞEMBE


App silme bazen durum böyle değil!Öner, uygulamanızı zaten yayınlandı! Sadece veri tabanına yeni varlık ekleme ve ileri gidemezsin - geçiş yapmak gerekir!

Belgeleri kazmak istemiyor olanlar için hızlı bir düzeltme arıyor:

  1. Açık .dosya xcdatamodeld
  2. Editör tıklayın
  3. model seç sürümü Ekle...
  4. Modelinizin yeni bir sürümü (datamodels yeni grup eklendi) ekleyin
  5. ana dosya, açık dosya Müfettiş (sağ panel) seçin
  6. ve Versioned core data model altında geçerli veri modeli veri modeli yeni sürümü seçin
  7. DEĞİL zaten ) sözde yapmalıdır "Işık Geçiş".
  8. persistentStoreCoordinator oluşturulmaktadır senin için AppDelegate git ve Bul
  9. Bu satır if (![_persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL options:nil error:&error]) bul
  10. @{NSMigratePersistentStoresAutomaticallyOption:@YES, NSInferMappingModelAutomaticallyOption:@YES} nil seçenek (aslında bu yöntem kod yorumladı sağlanan) değiştirin
  11. Al bakalım, iyi eğlenceler!

P. S. Bu sadece basit bir geçiş için geçerlidir. Hafif bir geçiş olarak nitelemek için, geçiş için, değişikliklerinizi sınırlı olmalı bu dar bant için:

  • Ya da bir özellik (nitelik ya da ilişki) Ekle / Kaldır.
  • Nonoptional bir özellik isteğe bağlı olun.
  • İsteğe bağlı bir öznitelik nonoptional olun, varsayılan değer verdiğiniz sürece.
  • Veya bir varlık Ekle / Kaldır.
  • Bir özelliği yeniden adlandırın.
  • Bir varlığın yeniden adlandırın.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • infiniTuts

    infiniTuts

    18 Ocak 2012
  • Tahir Jahi

    Tahir Jahi

    6 Mart 2006
  • wwjoshdu

    wwjoshdu

    18 ŞUBAT 2011