首页 > 代码库 > ios 数据持久化之magical record(基于coredata)
ios 数据持久化之magical record(基于coredata)
一个偶然的机会看到了magical record,就试了下,发现挺好用,
Magic Record是Saul Mora写的一个开源的类库,目的是使得Core Data使用起来更加的便捷容易。这个库的开发灵感来自于Ruby on Rails(Web 应用程序框架)中的active record模式
具体安装步骤:
http://blog.csdn.net/kuizhang1/article/details/21200367
具体使用:
/*添加记录*/
Person*person = [PersonMR_createEntity];
person.firstname =@"Frank";
person.lastname =@"Zhang";
person.age =@26;
[[NSManagedObjectContextMR_defaultContext]MR_saveToPersistentStoreAndWait];
//
// /*查询*/
// NSArray*persons = [Person MR_findAll];
// NSLog(@"%d",[persons count]);
// for (Person*persontemp in persons) {
// NSLog(@"firstname:%@----lasename:%@----age:%@",persontemp.firstname,persontemp.lastname,persontemp.age);
// }
// //查找数据库中的所有Person。
// NSArray *persons = [Person MR_findAll];
//
// //查找所有的Person并按照first name排序。
// NSArray *personsSorted = [Person MR_findAllSortedBy:@"firstname" ascending:YES];
//
// //查找所有age属性为25的Person记录。
// NSArray *personsAgeEuqals25 = [Person MR_findByAttribute:@"age" withValue:[NSNumber numberWithInt:25]];
//
// //查找数据库中的第一条记录
// Person *person = [Person MR_findFirst];
/*改*/
// NSArray*wellperson = [Person MR_findByAttribute:@"lastname" withValue:@"Zhang" andOrderBy:@"age" ascending:YES];
// for (Person*persontemp in wellperson) {
// persontemp.lastname = @"kun";
// }
// [[NSManagedObjectContext MR_defaultContext]MR_saveToPersistentStoreAndWait];
// /*查询*/
// NSArray*persons = [Person MR_findAll];
// NSLog(@"%d",[persons count]);
// for (Person*persontemp in persons) {
// NSLog(@"firstname:%@----lasename:%@----age:%@",persontemp.firstname,persontemp.lastname,persontemp.age);
// }
/*删除*/
// delete数据库中所有人
// [Person MR_truncateAll];
// [[NSManagedObjectContext MR_defaultContext] MR_saveToPersistentStoreAndWait];
// 根据条件delete特定的某个人
NSArray *personsdelete = [PersonMR_findByAttribute:@"lastname"withValue:@"Zhang"andOrderBy:@"age"ascending:YES];
NSLog(@"%d",[personsdeletecount]);
for (Person *personin personsdelete) {
[person MR_deleteEntity];
}
[[NSManagedObjectContextMR_defaultContext]MR_saveToPersistentStoreAndWait];
Magical Record的出现在一定程度上缓解了这个问题,降低了Core Data的使用门槛,相对于直接使用coredata更为简洁高效而且使用过程非常简单
magical record第三方下载:https://github.com/magicalpanda/MagicalRecord
ios 数据持久化之magical record(基于coredata)