Я настраиваю основные данные с помощью NSPersistentCloudKitContainer, чтобы мои данные автоматически интегрировались с CloudKit. Проблема, с которой я сталкиваюсь, заключается в том, что я больше не могу иметь необязательные атрибуты в своих сущностях. Все мои необязательные атрибуты генерируют ошибку компилятора
[entity].[attribute] must have a default value
Это ошибка? Есть ли хорошая работа для этой проблемы?
Вы поняли это?





Кажется, это исправлено в Xcode 11 beta 3.
У меня такая же проблема с xCode 11.0 beta 6. Можно ли это исправить?
«Решение» состоит в том, чтобы сделать все ссылки необязательными. В XCode 11 GM это все то же самое, не думайте, что это «исправлено» в любой бета-версии xcode.
Я думаю, причина в том, что он синхронизируется с CloudKit, они хотят иметь полный контроль над синхронизацией по типам объектов, поэтому может быть короткий период времени, когда связь не работает.
Я тоже не знаю, баг это или фича. Но я предполагаю, что сейчас это просто одно из ограничений, связанных с автоматической синхронизацией CoreData (помимо тех, которые Apple упоминает здесь: developer.apple.com/documentation/coredata/…). Возможно, для инициализации схемы CloudKit требуются значения по умолчанию. Хороший обходной путь — предоставить значения по умолчанию. ;)