Tests测试 | ✗ |
Lang语言 | Obj-CObjective C |
许可证 | MIT |
Released最后发布 | Nov 2015 |
由Hiroki Umatani维护。
此iOS库可用于创建和管理CoreData。
pod 'PEAR-CoreDataManager-iOS'
[示例]
数据模型:CoreDataManager.xcdatamodeld
实体模型:CDTestEntity
属性:实体的类型
id:integer64
num:integer64
name:String
#import "CoreDataManager.h"
[CoreDataManager initSettingWithCoreDataName:@"CoreDataManager"
sqliteName:@"CoreDataSqlite"];
// create insert instance of CoreData
CDTestEntity *insertEntity = [CoreDataManager createInsertEntityWithClassName:@"CDTestEntity"];
// add value
insertEntity.num = @((uint)arc4random()%RAND_MAX);
insertEntity.name = @"test";
// save insert data
[CoreDataManager save];
// search condition
NSPredicate *pred = [_coreDataManager setPredicateOverWithSearchKey:@"id" searchValue:@(0)];
// fetch data
[_coreDataManager fetchWithEntity:TEST_ENTITY
Predicate:pred
success:^(NSArray *fetchLists)
{
// update
for (CDTestEntity *updateEntity in fetchLists)
{
updateEntity.name = @"update_test";
[_coreDataManager save];
}
}
failed:^(NSError *error)
{
}];
// fetch all data
[CoreDataManager fetchWithEntity:@"CDTestEntity"
Predicate:nil
success:^(NSArray *fetchLists)
{
// parse
for (CDTestEntity *fetchEntity in fetchLists)
{
// access property of fetchEnity
}
}
failed:^(NSError *error)
{
}];
[_coreDataManager fetchWithEntity:TEST_ENTITY
Predicate:nil
success:^(NSArray *fetchLists)
{
// delete entity
for (CDTestEntity *deleteEntity in fetchLists)
{
[_coreDataManager deleteWithEntity:deleteEntity];
}
}
failed:^(NSError *error)
{
}];