TestsTested | ✗ |
LangLanguage | Obj-CObjective C |
License | MIT |
ReleasedLast Release | Nov 2015 |
Maintained by Hiroki Umatani.
This ios library can be to create and manage the CoreData.
pod 'PEAR-CoreDataManager-iOS'
[example]
Data model : CoreDataManager.xcdatamodeld
Entity model : CDTestEntity
attribute : type of Entity
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)
{
}];