Core data 踩坑記錄

xcode8.2.1 版本上使用core data的正確初始化方式

  1. 新建.xcdatamodeld,Entity, 屬性,關(guān)系等
  2. 點(diǎn)擊Entity,修改最右面板屬性,Module為空, CodegenManual/None, 不要用xcode自動生成NSManagedObject Subclass, 手動Command+N生成實(shí)體類(添加屬性和關(guān)系等)。如果點(diǎn)擊了自動生成,清除所有DerivedData, 重新build
  3. 集成MagicRecord,就可以愉快的使用core data了。

如果不這么做,可能遇到的問題有:

  • 采用xcode自動生成,發(fā)現(xiàn)重名類
  • Unable to load class named 'Person' for entity 'Person'. Class not found, using default NSManagedObject instead.等等

相關(guān)代碼如下:

#import <CoreData/CoreData.h>

@class IMMessage;
@interface Person : NSManagedObject

@property (nonatomic, assign) int32_t age;
@property ( nonatomic, copy) NSString *name;
@property ( nonatomic, copy) NSString *phone;

@property(nonatomic, retain) NSSet<IMMessage *> *msgs;


@end

#import "Person.h"

@implementation Person

@dynamic name, phone, age, msgs;


@end
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 適讀對象: 需要入門Core Data的朋友; 像我一樣,尚未學(xué)過數(shù)據(jù)庫相關(guān)課程,不太懂怎么寫SQLite語句的朋...
    AntonyWong閱讀 5,640評論 8 21
  • 引言 在這個教程中,你會看到在Xcode提供的初始化代碼模板和數(shù)據(jù)模型編輯器資源中,用Swift語言寫出你的第一個...
    MarkLin閱讀 10,366評論 7 32
  • 本文是對 MagicalRecord github上的翻譯 正文:注意: MagicalRecord 在 ARC...
    騂躍神話閱讀 2,138評論 1 5
  • 1 前言 CoreData不僅僅是數(shù)據(jù)庫,而是蘋果封裝的一個更高級的數(shù)據(jù)持久化框架,SQLite只是其提供的一種數(shù)...
    RichardJieChen閱讀 3,140評論 2 2
  • (2010年舊文,因?yàn)橄肫鹆松心切┱滟F的人和情誼) 毫無征兆的,突然想起一個朋友。 大學(xué)同學(xué),他在一班,我在二...
    小樹洞君閱讀 316評論 2 2

友情鏈接更多精彩內(nèi)容