如何清除实体所有属性的内容?

How to clear the contents of all the attributes of an entity?

我有数据记录在 coredata 中实体的属性中。 我想擦除实体每个属性中保存的数据。 请问有什么方法可以做到吗?如果可以,怎么做?

谢谢

获取该对象的 NSEntityDescription(即 NSManagedObject 的实体 属性)。 然后你可以简单地迭代名称(通过 attributesByName 属性)并将所有值设置为 nil

for (name, attributes) in entity.attributesByName { setValue(nil, forKey: name) }

您可以对该对象的关系执行相同的操作(通过 relationshipsByName 属性)

for (name, relationship) in entity.relationshipsByName { setValue(nil, forKey: name) }

使用此方法您还可以排除特定属性(如果有一些您不想清除)。