我已經處理過輕量級遷移以及映射基本更改,但是我已經搜索並溢出並且沒有找到類似的情況,其中實體名稱保持不變,但屬性類型從int更改爲字符串(我認爲這將很容易完成)將核心數據屬性類型從Integer32更改爲字符串
我以爲我是通過繼承NSEntityMigrationPolicy在正確的軌道上,然後我將mappingmodel中的自定義策略字段設置爲this子類(它甚至沒有一個Xcode重啓後自動完成...)
但我看到createDestinationInstancesForSourceInstance是沒有得到所謂的
現在,因爲我處理的自定義映射模型和政策,我應該還是有它推斷映射模型,但具有自動遷移掉在持久存儲?
NSDictionary *options = @{NSMigratePersistentStoresAutomaticallyOption:@NO,
NSInferMappingModelAutomaticallyOption:@YES};
任何幫助,非常感謝!
我的屬性映射表情真的很希望我能夠做到像$ source.incrementer.string :)
我需要這樣做上的應用程序確實是非常大的,所以我想我會用一個小的演示文件試圖啓動。作爲一項完整性檢查,我剛剛使用核心數據爲iPhone開啓了一個新的主 - 細節應用程序。我運行應用程序一切都很好去,我打開了NSInferMappingModelAutomaticallyOption:@YES,NSMigratePersistentStoresAutomaticallyOption:@YES THEN我創建了模型2,並添加了一個名爲年齡Integer32的屬性,並再次構建,一切都很好,然後我建立了模型3關閉模型2,改變年齡類型字符串和一切都變得混亂! http://tinyurl.com/kc68a4x –
這是不幸的,輕量級遷移不會做這種轉換。我會建議提交一份雷達,然後提出我的第二個建議。 –