ios - 如何强制执行核心数据关系的最大计数?

标签 ios objective-c swift core-data

我有一个 User 实体,它与 Location 实体具有对多 关系。我将关系设置为 maxCount 为 50。当我创建新的 Location 实体并将其设置为用户时,Core Data 是否会自动删除旧实体。我是否必须检查新大小是否大于 50 并手动删除旧的 Location 实体,这样我就没有不需要的悬空对象了。我将删除规则设置为 Cascade

NSRelationshipDescription.maxCount 的描述只是接收器的最大计数。,我没有看到任何描述 minCount/maxCount 的内容> 有效。

对这种行为的任何见解表示赞赏。谢谢!

最佳答案

CoreData 不会自动删除任何内容,如果当前状态违反了 maxCount 规则,它只会无法保存上下文。

因此,由您决定在尝试保存之前需要删除和清理的内容。

关于ios - 如何强制执行核心数据关系的最大计数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53368233/

相关文章:

ios - 本地化多个 Storyboard

ios - 左上角像素坐标 ios (0,0) 或 (1,1)?

ios 取消注册观察者

ios - 如何在用户关闭当前应用程序时打开另一个应用程序?

ios - Swift 从父类(super class)函数中相应的子类调用类函数

ios - UIImagePickerController 第一次打开时速度很慢,双击时除外

ios - 如何检测 iOS 钥匙串(keychain)项目是否不可用? (首次解锁前)

ios - -[NSDate dateFromString:]:无法识别的选择器发送错误

ios - 从大照片生成图 block (iOS PhotoScroller)

ios - 如何判断 Cocoa Touch 设备是否可以调用电话?