字段 'recordName' 未标记为可查询 - cloudkit 仪表板

Field 'recordName' is not marked queryable - cloudkit dashboard

在 Cloudkit 仪表板中,我 select 记录类型,编辑索引,然后我 select 添加基本索引。我在下拉列表中看到 createTime、createdBy、eTag、modTime、modifiedBy、recordID 和记录字段。我没有在下拉列表中看到 recordName(附上屏幕截图)。如果不在 recordName 上创建索引,我无法在 cloudKit 仪表板中查询记录。我收到错误消息:字段 'recordName' 未标记为可查询 如何在 recordName 上创建索引?

我 运行 进入同样的问题并通过添加 ___recordID 作为可查询索引解决了它。当它被添加到索引列表中时,该字段更改为 recordName.

要将其添加为可查询索引,请转到架构部分 -> 索引,然后单击添加基本索引

这里是如何在仪表板中执行此操作的视觉效果。注意步骤 8) 和 18) 的照片。

仅供参考 在执行下面的操作后我 运行 进入了另一个我遇到错误的问题

Field 'createdBy' is not marked queryable

我不确定 createdBy 是哪一个,但要修复它,除了第 14 步外,我必须按照以下完全相同的步骤进行操作),我选择 createdUserRecordName 并生成所有其他系统__etag 等字段名称,然后必须确保每个字段名称都是 15)queryable。我不得不分别按 16) Save Changes

A- Select 1) Databases > 2) 单击下拉箭头 3) select 您的 iCloud name 来自 4) Xcode

B- 下一个 select 5) Record(按下拉箭头)> 6) Schema > Record Types(记录类型突出显示后 点击屏幕外的任意位置)

C- Next under 7) Record Type 点击 Users 或任何你的记录类型的名称

D- 在下一个屏幕上您将看到 8) recordName 字段设置为 Single Field Indexes 下的 None。要更改它并解决问题,请按 9) Record Types 返回

E- 返回页面后,在同一页面上 10) 按 Records 旁边的向下箭头 > 然后 11) select Schema > Indexes(索引突出显示后 单击屏幕外的任意位置

F- 下一个 12) Record Type 单击 Users 或任何您的记录类型的名称

G- 在此页面底部,13) 单击 Add Basic Index,然后单击 select 14) recordName

H- 在同一页面上,确保 15) Index TypeQueryable。然后按 16) Save Changes。保存后,按 17) Indexes 返回

再次执行步骤 5) 到 8),但这次 18) recordName 字段将设置为 Single Field Indexes

下的 **Queryable**