我正面临着coredata关系的问题。这是我的问题情节步骤
问题:当我打印" Group2"的成员时来自" GroupTable"的关系打印所有3条记录,但是当我打印" Group1"来自" GroupTable"的关系,没有记录。同样,如果我继续创建具有相同3个联系人的新组,则仅在最后一组中打印记录。
任何人都可以帮助我或建议任何方法。
答案 0 :(得分:1)
这是将GroupTable
与Contact
之间的关系定义为“to-one”的结果:每个Group
只能与一个Contact
相关联。因此,当您将3 Contact
保存到“Group2”时,CoreData会自动将它们从“Group1”中删除。
如果您希望ContactTable
的实例属于“Group1”和“Group2”,则必须将GroupTable
与struct st
{
....
}
struct st A;
A.element = value;
struct st B;
B.element = value;
struct st_array[2];
struct st_array[0] = A
struct st_array[1] = B;
之间的关系定义为“to-many”。