You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Xcode 9.2的Core Data模型中删除Fetch Index Element?

解决Xcode 9.2 Core Data模型中Fetch Index Element无法删除的问题

我之前也碰到过这个烦人的问题!在Xcode 9.2里给Core Data实体创建Fetch Index Element后,找不到直接删除的入口,还一直弹出"A fetch index should have one or more elements ."的警告,确实挺闹心。下面是我亲测有效的两种解决办法:

方法一:通过Xcode可视化编辑器删除

  • 打开你的.xcdatamodeld文件,选中出现警告的那个Fetch Index(在实体的Fetch Indexes列表里)
  • 点击Xcode右上角的「Data Model Inspector」(就是那个类似尺子图标的检查器按钮)
  • 在检查器面板里找到Fetch Index Elements区域,选中你想删除的那个元素
  • 按下键盘上的Delete键,或者右键点击元素选择「Delete」即可
  • 注意:如果删除后整个Fetch Index没有任何元素了,一定要把这个空的Fetch Index也删掉(同样选中后按Delete),否则警告还会存在

方法二:直接编辑模型文件的XML(彻底解决)

如果可视化方法不管用,可以直接修改模型的底层XML文件:

  • 右键你的.xcdatamodeld文件,选择「Show Package Contents」
  • 在弹出的文件夹里,打开当前使用的.xcdatamodel文件(如果有多个版本,选带有当前标记的那个)
  • 用任意文本编辑器打开这个文件,找到包含<fetchIndex>的代码块,它的结构大概是这样的:
    <fetchIndex name="YourIndexName">
        <elements>
            <element property="yourProperty" type="binary"/>
        </elements>
    </fetchIndex>
    
  • 删除你不需要的<element>标签;如果整个索引已经没有元素了,直接删掉整个<fetchIndex>块
  • 保存文件后回到Xcode,它会自动重新加载Core Data模型,警告应该就会消失了

内容的提问来源于stack exchange,提问作者Jaiden Ryder

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 08:15:16