gpt4 book ai didi

ios - NSValueTransformer + MagicalRecord + Mogenerator

转载 作者:行者123 更新时间:2023-11-29 01:47:55 25 4
gpt4 key购买 nike

我无法在我的 ManagedObjectContext 上调用 save:(NSErrro **) 时调用我的 NSValueTransformer 实现。

我已经尝试通过自己的 ManagedObject-Class 而不是依赖 Mogenerator 来解决这个问题,但没有成功。

这是我的实体配置的截图: enter image description here

这是我的 NSValueTransformer-Subclass(不会命中任何断点): enter image description here

下面是我创建模型和保存上下文的方式。我还尝试使用 MR_create 和 MR_saveToPersistentStoreCoordinator-Methodes 进行装箱和保存,但没有成功。

enter image description here

为什么核心数据在将实体保存到持久存储协调器时不执行我的 NSValueTransformer 代码?

最佳答案

事实证明,NSManagedObjectContext 直接连接到 NSPersistentStoreCoordinator 非常重要。使用 [NSMangedObjectContext MR_default] 和以下表达式之间似乎有所不同:

NSPersistentStoreCoordinator *coordinator = [NSPersistentStoreCoordinator MR_defaultStoreCoordinator];
NSManagedObjectContext *context = [NSManagedObjectContext MR_contextWithStoreCoordinator:coordinator];

我已经修改了上面的代码,所以它使用了另一个 NSManagedObjectContext,现在我的 NSValueTransformer 将被命中。

Session *session = [self getSession];
[session MR_deleteEntityInContext:context];

session = [Session sessionWithFirstName:firstName surname:surname response:jsonResponse andContext:context];
[context MR_saveToPersistentStoreWithCompletion:nil];

所以我的问题解决了 - 如果有人知道为什么我不能使用 [NSManagedObjectContext MR_default] 我会非常感兴趣!

关于ios - NSValueTransformer + MagicalRecord + Mogenerator,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31695998/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com