tut*_*ain 18 core-data objective-c one-to-many ios
我是核心数据建模的新手,我很难理解一对多关系是如何工作的.
我有一个名为的父实体Task
,它可以有几个Comment
实体实例.我这样建模:on Comments
,与实体一起Task
调用目的地的关系.在,关系称为,其目的地,两个关系彼此相反. task
Task
Task
comments
Comment
未定义反向导致警告或错误消息.虽然这种方式的建模有效,但我注意到,一旦我为给定的第二个注释创建Task
,第一个被替换(一对一的关系).
告诉核心数据模型这种关系允许多个注释合在一起的正确方法是什么Task
?
此外,由于CoreData似乎自己管理主键,我如何创建一个NSPredicate
检索给定任务的所有注释?
谢谢你的任何建议!
Sha*_*osa 42
首先,您需要plural
在Task
实体中设置选项,在您的.xdatamodeled
选择中选择实体的relationship
属性,您应该能够看到这个Task
comments
有一个plural
选项一定要检查出来.你必须重新创建你NSManagedObject
的使用生成类,如果你使用sqlite存储,你必须删除和重建,所以它不会抱怨新模式与旧模式不一样.
要检查您是否具有一对多关系,您的Task
实体应该有一个名为comments的属性,这是一种NSSet
不是注释的类类型.
如果要检索给定任务的所有注释,则需要迭代该NSSet(comments)
任务的属性.
归档时间: |
|
查看次数: |
12759 次 |
最近记录: |