Avatar
Kishikawa Katsumi 7/20/2023 4:36 AM
Core DataのEntityの属性がOptionalでないということはSwiftのクラスのプロパティがOptionalでないということとは異なるのでCore Dataが生成するクラスのプロパティは常にOptionalになります。 Core DataのEntity定義でOptionalではないというのは保存するときに値が入っていればいいということなので、途中までnilが入る状態があることは構わない、というのがCore Dataの方針のようです。 また、生成されたクラスを修正してNon-Optionalにすることはできますが、XXEntity(context: persistentContainer.viewContext) のように引数を何も与えずにEntityを生成することができるのでその場合、Non-Optionalなプロパティにもかかわらずnilであるということが起こるのでNon-Optionalのプロパティである意味がありません。 ということであまりいい方法はないと思います。