- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
可以将一对一关系轻度迁移到一对多关系。架构已正确更新。即A->B变成A->>B
但是 A->B 中的一对一引用丢失了。我期待在迁移后访问 B 但它现在是一个没有任何人引用它的僵尸。
我是否必须创建一个映射模型才能工作?
最佳答案
创建映射模型将触发重量级迁移。大量迁移非常缓慢且占用大量内存。如果您在 iOS 上运行,那么您不想这样做。
如果自动迁移失败,那么您可能想要执行导出/导入类型迁移,而不是大量迁移。
本质上,对于导出/导入迁移,您需要遍历现有的核心数据模型并将其导出为其他格式(我喜欢使用 JSON),然后将其导入回新的数据模型。
如果你在桌面上,那么你绝对可以使用重度迁移。台式机有更多的可用内存、更大的 CPU 等。
I thought of that but it is complicated. I have to first export when the app starts. Then change the model version of the xcdatamodelid to the next version programatically. Then let the light migration do its work. Then import. For each app launch after that I have to check if the model version is the latest so I know to migrate or not.
是的,这很复杂,尽管你不会这样做。另一种选择是执行重量级迁移,这有弹出内存、弹出看门狗的风险,并且需要更长的时间,从而造成较差的用户体验。
如果轻量级迁移无法完成某些任务,则需要进行重度迁移或手动迁移。大量迁移(使用映射模型)不是为 iOS 设计的。它是 OS X 时代的遗留物。是的,您可以让它工作,但它的性能不高。
进行手动迁移并不那么困难。作为启动过程的一部分,您无论如何都应该检查迁移事件。如果发生迁移事件,则您可以通过使用旧模型建立旧堆栈来继续进行手动迁移。 NSManagedObjectModel
有方法来解决这个问题。然后导出为 JSON,建立新堆栈并导入。
关于ios - 一对一到一对多的轻迁移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21906460/
考虑到以下情况,我是前端初学者: 某个 HTML 页面应该包含一个沉重的图像(例如 - 动画 gif),但我不想强制客户缓慢地等待它完全下载才能享受一个漂亮的页面,而是我更愿意给他看一个轻量级图像(例
我是一名优秀的程序员,十分优秀!