2

我想为我的应用程序使用 cloudkit 的私有数据库,所以为了设计,我正在寻找可以轻松地将我的模型类映射到 cloudkit 的东西,而无需任何额外的努力。

所以我在编写它的苹果文档中发现了一些有趣的东西,

在开发过程中,使用 CloudKit API 创建模式很容易。当您将记录对象保存到数据库时,会自动为您创建关联的记录类型及其字段。此功能称为即时模式,仅当您使用商店中出售的应用程序无法访问的开发环境时才可用。例如,在开发过程中,您可以使用存储在属性列表中的测试记录来填充 CloudKit 数据库。

但是我无法完全理解相同的概念或无法找到任何可靠的教程来实现这一点。

4

1 回答 1

7

在开发环境中,您有两个用于定义数据库模式的选项。首先,您可以使用 Web 门户并手动创建新的记录类型(随时添加字段类型)。或者,您可以使用“及时”路线,这意味着您只需在代码中创建新记录,添加所需的字段,然后保存记录。在开发环境中,这会自动将记录类型添加到模式中,并将您提供的数据保存在新记录中。

但是,这在生产环境中不起作用。您无法在 prod 环境中创建新架构。Web 门户将不允许您手动创建新的记录类型。如果您尝试创建新记录(或向现有记录添加新字段)并将其保存在 prod 环境中,您将收到错误消息。

在 prod 环境中添加新记录类型(或向现有记录类型添加新字段)的唯一方法是首先在 dev 环境中创建所需的更改,然后将更改从 dev 环境发布到 prod 环境.

简而言之,开发环境模式具有可塑性,只需创建新记录并保存即可对其进行修改。prod 环境架构是固定的,只能通过修改 dev env 然后将更改发布到 prod 来更改。

于 2018-01-13T19:06:34.777 回答