我需要将 Coredata 实体中的一个属性设置为非空并具有默认值。
我已经在 .xcdatamodeld 模式定义中为实体的属性设置了默认值
我的问题是该属性是否应该标记为可选。
如果我不检查属性的以下三个中的任何一个 - Transient、Optional、Indexed,会有什么影响?此属性是否会被视为强制性属性?
编辑:当我将属性设置为强制性时,如果尝试设置的值为 nil,则插入失败,错误代码为 1570 - NSValidationMissingMandatoryPropertyError,我只是希望将属性设置为默认值并插入。
那么有一个默认值有什么意义呢?谁能帮我解决我在这里真正想念的问题。
最佳答案
将其设置为强制性的并为其配置适当的默认值(例如 0
)。如果它是可选的,则无论其他选项如何,都不能保证默认值的设置。
关于ios - CoreData - 将实体的属性设置为不为空 - 属性应该设置为可选还是强制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23549443/