iOS 在Xcode8,用 MagicalRecord 来做本地数据库

   这是本人的第一篇简书,记录的是关于在升级Xcode8以后,如何使用 iOS 第三方 MagicalRecord 库的方法,如果发现其他的问题请直接留言或者联系笔者邮箱: aaasss_6002@qq.com 。

github   https://github.com/magicalpanda/MagicalRecord

首先先贴出  MagicalRecord 库的github地址,顺便感谢有个如此好的库。

1: 下载好之后,创建好一个工程,不要勾选 Core Data,然后利用 cocoapods 下载安装好最新版本的 MagicalRecord

ps:这里解释下为什么不去github直接下载然后放到工程,因为直接下载后拉入新的工程,会出现文件找不到的情况,我也尝试过很久其他方法,其中一个要一个个 把 (#import )把文件的路径都改掉,这样很麻烦,所以直接用cocoapods比较方便,能直接集成好,如果你不怕麻烦,可以自己改。

1


2: 为项目添加 CoreData.FrameWork。(点工程根节点,然后依次  Targets > Build Phases > Link Binary With Libraries > + > CoreData.framework > 添加 ),然后在文件需要使用到 MagicalRecord 库的地方: #import <MagicalRecord/MagicalRecord.h> 

3: 接下来,我们需要建立模型需要的模型, 做一个比方,这里建一个Person模型,属性有3个,name,age,work。然后进行相应的增删查改操作.

  1、建立一个Data Model, 名字自取,我这里名字是 TestModel,然后 就会多了2这个文件。

2 建立Data Model

 2、建立模型Person,并添加属性。 首先选择TestModel ,然后点击坐下角的 Add Entity ,再修改名字成Person,再分别添加Person的三个属性,name , work ,age ,并给它们的type设置成string 、string 、integer 16,另外着重看第5点(箭头指向的地方) 这个是要设置成OC语言的,当然如果是swift语言就另说,这是和Xcode8之前的版本不同的地方.

图2 建立 Person 模型

3、 接下来是建模,建模也和之前的版本不同,不是之前的方法建模了,建模的地方放置到了这里:

图3 建立模型的地方

4、点了一路的确定之后,将会出现这4个文件,然后我们在需要使用到Person模型的地方导入 #import "Person+CoreDataClass.h" .

图4 建立好模型的地方

5、这样做了之后,还有一个操作,就是在 AppDelegate.m 文件的 - (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions 方法里面添加数据库存储的位置 建议添加以下全部代码,不然在控制台会有一些奇怪的输出。

图5 初始化数据库路径


6、然后我们就可以开始对数据进行 增删查改 的四项操作了. 我用SB拖了4个按钮,分别对应增删查改。其他的具体上代码。

7、增加和查询

图7 增加和查询代码。


8、删除和修改.

图8 删除和修改

4: 稍稍总结了一下 ,用 MagicalRecord 来作为本地数据库存储是很方便,避免了写很多配置,只需要几行代码就能够完成项目的需求,另外标注一下,只有在读取数据的时候是不需要做保存操作的,其它的对数据库的操作是都需要在完成的时候,使用下面这行代码来进行保存。

[[NSManagedObjectContextMR_defaultContext]MR_saveToPersistentStoreAndWait]; 

5: 留下的坑 :
 1、第一个建立模型的时候的,模型放置的位置在xocde文件夹的最上面的那一块,取下来之后又会出现找不到文件的情况,有待解决.

2、如果直接从 Github 上取出来 MagicalRecord  那么会有文件找不到的报错,不知道如何解决。

最后在 Github 留下 Demo 地址 .

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,001评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,210评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,874评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,001评论 1 291
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,022评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,005评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,929评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,742评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,193评论 1 309
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,427评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,583评论 1 346
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,305评论 5 342
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,911评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,564评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,731评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,581评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,478评论 2 352

推荐阅读更多精彩内容