核心数据 - 拒绝导致错误的删除规则

Cer*_*ner 2 xcode ios5

我有一个核心数据应用程序,工作正常.我现在正在尝试将删除规则添加到几个关系中.实体1具有一组实体2

如果实体1被删除并且它有一些实体2对象,则拒绝删除,否则允许.可以删除实体二而无需担心实体1

我将实体1上的关系设置为Deny,并将实体2设置为nullify

我正在尝试删除实体1时出现错误[quote]未解决的错误错误Domain = NSCocoaErrorDomain Code = 1600"操作无法完成.(Cocoa error 1600.)"UserInfo = 0x1e882f40 {NSValidationErrorObject =(entity:工厂; id:0x1dda43e0 [/ quote]

我是否必须做其他事情才能让它发挥作用

Mar*_*rný 7

拒绝规则不能像您期望的那样工作.来自Apple的文档:

如果规则是拒绝,那么你之前删除一个对象,你必须从关系的目标对象或对象,否则当你保存你会得到一个验证错误.

不幸的是,拒绝规则不会阻止删除,但会导致验证错误.因此,您应该在删除之前手动检查关系是否为空.