使用核心数据和魔法logging创build一个实例variables
目前在一个给定的类中给定的方法,我可以创build一个由Core Data和Magical Recordpipe理的自定义variables的一个实例,下面的行
AViewController.m
List *list = [List MR_createInContext:_managedObjectContext];
然后我可以像这样设置列表的属性:
list.name = @"FooBar Name";
我的问题 :在AViewController.h我可以做到以下几点 –
@interface AViewController : UIViewController { /* Define Local List Var for AViewController class */ List *list; }
然后在.m
viewdidload { list = [List MR_createInContext:_managedObjectContext]; } someCustomMethod { list.name = @"FooBar Name"; [_managedObjectContext MR_save]; }
你的代码应该工作。 但是,如果你正试图从input元素创build新的对象(也许在button点击),只有通过运行应用程序一次又一次创build新的对象。 我的意思是,如果你的someCustomMethod
被一次又一次地调用,同一个对象将被重写的值。 (如果这是你想要的,那就好了)
但是如果你想创build新的对象,你应该在对象内部重新初始化它。 即你应该使用下面的代码:
viewdidload { list = [List MR_createInContext:_managedObjectContext]; } someCustomMethod { list.name = @"FooBar Name"; [_managedObjectContext MR_save]; list = [List MR_createInContext:_managedObjectContext]; //add this line }
因此,这种方式旧的对象将被保存,每次调用一个自定义方法时都会创build一个新的对象。
这种模式是非常常见的,你发布的代码应该工作。
我不完全知道MR如何工作,但是在Cord Data中,如果要放弃该对象,则必须从上下文中删除该对象,否则将在下次保存时保存该对象。
- 核心数据并发`performBlockAndWait:`NSManagedObjectContext zombie
- NSFetchedResultsController在被pipe理对象被修改时通知它的代理删除更改,并且从不通知插入或更新
- 我可以在一个应用程序中创build一个核心数据对象图,然后在另一个预设状态下使用它吗?
- 核心数据 – 如何获取具有最大值属性的实体
- 嵌套子查询无法编译的NSPredicate(核心数据)
- 如何在故事板中的多个视图之间传递对象,iOS Dev
- 在ios swift中核心数据分组无法正常工作
- NSObjectInaccessibleException',原因:'CoreData不能履行一个错误
- 核心数据 – 使用Group By的瞬态属性