gpt4 book ai didi

ios - 在运行时以编程方式向 CoreData 删除或添加属性

转载 作者:行者123 更新时间:2023-11-28 21:00:47 28 4
gpt4 key购买 nike

我必须根据 Objective C 中的 api 响应创建和删除属性。例如,现在我的 api 响应包含字段“facebook”、“whatsapp”和“viber”。但将来响应可以添加“youtube”。基于此响应,我必须删除实体“Social”的所有属性和值,现在创建四个属性并设置值。如何以编程方式做到这一点?因为默认的 *.xcdatamodeld 文件帮不了我,对吧?注意:我的项目在 objective-c 中。

最佳答案

数据模型在应用启动时是可变的——例如,您可以完全在代码中构建模型,而不使用模型编辑器。但是一旦加载持久存储文件,您必须将模型视为固定的。加载持久存储后的任何更改都将导致崩溃。这意味着任何更改都必须在调用 loadPersistentStores(completionHandler:)addPersistentStore(with:completionHandler:) 之前发生。

Alexander 关于可选属性的建议很好。如果您需要模型更加动态,则需要创建一个新的相关实体来存储服务名称以及您需要保存的有关服务的任何信息。如果这样做,您的 Social 实体将与名为 Service 的新实体建立一对多关系。 Service 将有一个名为 name 的字符串属性,该属性将具有 twitter、facebook、youtube 等值。它还具有您需要保存的有关服务的任何其他属性。

关于ios - 在运行时以编程方式向 CoreData 删除或添加属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49069036/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com