我需要将Coredata实体中的属性设置为非null并具有默认值。
我在.xcdatamodeld架构定义中为实体的属性设置了默认值
我的问题是该属性是否应标记为可选。
如果我不检查属性中的以下三项中的任何一项会产生什么影响 - Transient,Optional,Indexed?这个属性会被视为强制性的吗?
编辑:当我将属性设置为必需属性时,如果尝试设置的值为nil,则插入失败,错误代码为1570 - NSValidationMissingMandatoryPropertyError,我只希望将属性设置为其默认值并插入。
那么拥有默认值有什么意义呢?任何人都可以帮助我在这里真正缺少的东西。
答案 0 :(得分:4)
将其设置为必填项,并使用适当的默认值(例如0
)对其进行配置。如果是可选项,则无论其他选项如何,都无法保证默认值的设置。