Значения CloudKit и CoreData по умолчанию

Я настраиваю основные данные с помощью NSPersistentCloudKitContainer, чтобы мои данные автоматически интегрировались с CloudKit. Проблема, с которой я сталкиваюсь, заключается в том, что я больше не могу иметь необязательные атрибуты в своих сущностях. Все мои необязательные атрибуты генерируют ошибку компилятора

[объект].[атрибут] должен иметь значение по умолчанию

Это ошибка? Есть ли хорошая работа для этой проблемы?


person Jake    schedule 13.06.2019    source источник
comment
Я тоже не знаю, баг это или фича. Но я предполагаю, что сейчас это просто одно из ограничений, связанных с автоматической синхронизацией CoreData (помимо тех, которые Apple упоминает здесь: developer.apple.com/documentation/coredata/). Возможно, для инициализации схемы CloudKit требуются значения по умолчанию. Хороший обходной путь — предоставить значения по умолчанию. ;)   -  person Victor Pro    schedule 21.06.2019
comment
Вы поняли это?   -  person Clifton Labrum    schedule 26.06.2019


Ответы (2)


Кажется, это исправлено в Xcode 11 beta 3.

person hstdt    schedule 08.07.2019
comment
У меня такая же проблема с xCode 11.0 beta 6. Можно ли это исправить? - person nomnom; 28.08.2019
comment
Все еще сломан в XCode 12... - person TheJeff; 14.03.2021

«Решение» состоит в том, чтобы сделать все ссылки необязательными. В XCode 11 GM это все то же самое, не думайте, что это «исправлено» в любой бета-версии xcode.

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

person Phuah Yee Keat    schedule 17.09.2019