Sürümlü bir model oluşturduktan sonra kullanılacak modeli ayarlamak için Xcode 4'te aşağıdaki işlevi gerçekleştirmek nasıl karışık.
Tasarım> Veri Modeli> Mevcut Sürümü Ayarla
Sürümlü bir model oluşturduktan sonra kullanılacak modeli ayarlamak için Xcode 4'te aşağıdaki işlevi gerçekleştirmek nasıl karışık.
Tasarım> Veri Modeli> Mevcut Sürümü Ayarla
Yanıtlar:
Xcode 4'te, * .xcdatamodeld dosyanızı seçtiğinizde dosya denetçisinin "Sürümlü Temel Veri Modeli - Geçerli" bölümünde veri modelinizin yalnızca bir sürümünü görürseniz; veya * .xcdatamodel dosyanızın Xcode'un proje gezgini içindeki xcdatamodeld paketinin dışında gösterilen 2. bir sürümüne sahipseniz, aşağıda okuyun.
Bunu düzeltmek için:
1) Hem * .xcdatamodeld hem de * .xcdatamodel referanslarını proje gezgininde sağ tıklayıp "Sil" tuşuna basarak Xcode'dan kaldırın.
2) Xcode tarafından istendiğinde, Yalnızca Referansları Kaldır'ı tıklatın (çok önemli).
3) Önbelleğe alma işlemi olması durumunda Xcode'u iyi önlem almak için yeniden başlatın.
4) Her iki * .xcdatamodel dosyasını içeren tek * .xcdatamodeld dosyasını yeniden ekleyin.
Xcode şimdi ilişkileri tanımalı ve proje gezgininde * .xcdatamodeld dosyasını genişleterek, xcdatamodeld üst paketinin altındaki * .xcdatamodel dosyalarını da gösterecek ve mevcut modelin yanında yeşil bir onay işareti gösterecektir. Bu, veri denetçisinin dosya denetçisinde yalnızca bir sürümü göstermek yerine geçerli sürümünü seçmenize de izin vermelidir.
Xcode 4.2 için
YourModel.xcdatamodeld'i tıklayın
Yan bölmeyi görünür yap
"Sürümlü çekirdek veri modeli" altında, "mevcut açılır kutu" yı seçin, veri modelinizi seçin.
Şimdi yeşil onay işareti mevcut veri modelinize taşınır.
Bu benim için çalıştı: https://developer.apple.com/library/mac/recipes/xcode_help-core_data_modeling_tool/Articles/setting_current_version.html
temel veri modeli sürümünü seçme
Şimdi benim otomatik db modeli geçiş çalışır (temsilci otomatik geçiş kodu ile).
CoraData'dan setter yöntemini de kullanabilirsiniz ...
Sadece böyle bir şey yapın ...
Senin içinde CustomCoreDataManager.m :
#import "ObjectiveRecord.h"
ve init yöntemini şöyle çağırın
- (instancetype)init {
self = [super init];
if (self) {
[[CoreDataManager sharedManager] setModelName:@"YourModelName"];
}
return self;
}