这是我的Coredata模型/实体:
人(实体) - 其中primarykey是id徽章(实体) - >没有主键yer,但可以有 . (有年份,名称为属性 . 所以真的不能有主键) .
Relationship: 人 <-- ONE TO MANY -->
徽章
Delete Rule:
人 <-- CASCADE -->
徽章
徽章 <-- NULLIFY -->
人
Issue:
由于主键 id
可用,我只是在从服务器获取数据时保存到CoreData . 因此,每次在我当地的coredata商店中,数据都会更新 .
当API有一个新徽章时,我尝试将其保存在CoreData中,它可以工作 . 之后,如果任何徽章在服务器中被删除,并且当我尝试将整个API数据保存到CoreData时,API响应中已删除的内容仍可在CoreData中使用 .
How to handle this?
我能想到的一件事是,每次在保存徽章之前,我都可以获取并删除该人的所有ID . 但有更好的方法吗?