Как раз вовремя схема в Cloudkit

Я хочу использовать частную базу данных cloudkit для своего приложения, поэтому для разработки я искал что-то, что легко сопоставило бы мои классы моделей с cloudkit без каких-либо дополнительных усилий.

поэтому я наткнулся на что-то интересное в яблочном документе, где написано:

Во время разработки легко создать схему с помощью API CloudKit. Когда вы сохраняете объекты записей в базе данных, для вас автоматически создаются связанные типы записей и их поля. Эта функция называется схемой "точно в срок" и доступна только при использовании среды разработки, недоступной приложениям, продаваемым в магазине. Например, во время разработки вы можете заполнить базу данных CloudKit тестовыми записями, хранящимися в списке свойств.

Но я не могу точно понять концепцию того же или не могу найти надежный учебник, где это было достигнуто.

1 ответ

Решение

В среде разработки у вас есть два варианта определения схемы БД. Во-первых, вы можете использовать веб-портал и вручную создавать новые типы записей (добавляя типы полей по мере необходимости). Или вы можете использовать маршрут "точно в срок", то есть вы просто создаете новые записи в своем коде, добавляете нужные поля и затем сохраняете запись. В среде разработки это автоматически добавит тип записи в схему и сохранит данные, предоставленные вами в новой записи.

Это не работает в производственной среде, хотя. Вы не можете создать новую схему в среде prod. Веб-портал не позволит вам вручную создавать новые типы записей. Если вы попытаетесь создать новую запись (или добавить новые поля в существующую запись) и сохранить ее в среде prod, вы получите ошибку.

Единственный способ добавить новый тип записи (или добавить новое поле к существующему типу записи) в среде prod - это сначала создать нужное изменение в среде dev, а затем опубликовать изменения из среды dev в среде prod.,

Короче говоря, схема среды разработки является гибкой и может быть изменена просто путем создания новых записей и их сохранения. Схема среды prod является фиксированной и может быть изменена только путем изменения dev env и последующей публикации изменений в prod.

Другие вопросы по тегам