我的核心数据模型中有两个实体,
Client {id, name, ...other attributes}
Project {id, name, .... other attributes}
我有从客户到项目的一对多关系
Client.projects <------>> Project.client
同一个项目可以在两个不同的客户端对象中
例如,如果我有一个名为projectA的Project对象和两个名为clientA和clientB的Client对象,则clientA和clientB都可以像这样具有相同的项目ProjectA
clientA.projects =[projectA] and clientB.projects = [projectA]
我的要求是,
在UI中我有一个删除按钮,只有当其他客户端对象都没有该项目时,单击我需要删除的按钮(从coreData中删除对象)项目。
例如:
1例:projectA并没有客户端有projectA,所以在这种情况下我可以删除projectA对象
2例:projectA和clientA有这个项目,所以在这种情况下我无法删除projectA对象。
如何为上述情况设置谓词,以便根据谓词删除或删除?
我使用的是Swift 3.1