CoreData 好像正在丢失属性?
CoreData seems to be losing attributes?
我有一个名为 Skeins 的实体,它似乎正在丢失两个属性,但我不知道为什么:
func insertSkein(brand: String, code: String, type: String, description: String, discontinued: Bool) throws {
let sk = Skeins(context: self.context)
sk.id = UUID()
sk.brand = brand
sk.code = code
sk.type = type.capitalized
sk.skeindesc = description.capitalized
sk.discontinued = discontinued
self.context.insert(sk)
do{
try self.context.save()
}
catch{
print("error inserting skein: \(error)")
}
}
如果我在插入行查看 sk 的状态,我可以看到:
<Skeins: 0x600002ba1e00> (entity: Skeins; id: 0x6000008ab100 <x-coredata:///Skeins/t9792D8DC-F6B0-4644-BD81-4CC63CE05B0F2>; data: {
brand = TestBrand;
brandcode = TestBrandTestCode;
code = TestCode;
discontinued = 0;
id = "F1C7929C-C271-477D-B12F-0B3A11C13008";
projectSkeins = (
);
sharedSkeinProjects = (
);
如您所见,skeindesc 和 type 都丢失了(两者在参数中肯定都有值),而且我找不到数据库文件中字符串定义方式的任何差异,所以我被卡住了!任何建议都会很棒 :)
谢谢,
贝基
感谢大家对此的评论 - 花了几天时间对此感到沮丧,然后随机选择了一个不同的模拟器并且它运行良好。所以最好的猜测是,当我将项目指向 iOS 14 -> iOS 15 时,模拟器变得很混乱。经验教训 - 如果我要对项目进行重大更改,请务必擦除模拟器!
我有一个名为 Skeins 的实体,它似乎正在丢失两个属性,但我不知道为什么:
func insertSkein(brand: String, code: String, type: String, description: String, discontinued: Bool) throws {
let sk = Skeins(context: self.context)
sk.id = UUID()
sk.brand = brand
sk.code = code
sk.type = type.capitalized
sk.skeindesc = description.capitalized
sk.discontinued = discontinued
self.context.insert(sk)
do{
try self.context.save()
}
catch{
print("error inserting skein: \(error)")
}
}
如果我在插入行查看 sk 的状态,我可以看到:
<Skeins: 0x600002ba1e00> (entity: Skeins; id: 0x6000008ab100 <x-coredata:///Skeins/t9792D8DC-F6B0-4644-BD81-4CC63CE05B0F2>; data: {
brand = TestBrand;
brandcode = TestBrandTestCode;
code = TestCode;
discontinued = 0;
id = "F1C7929C-C271-477D-B12F-0B3A11C13008";
projectSkeins = (
);
sharedSkeinProjects = (
);
如您所见,skeindesc 和 type 都丢失了(两者在参数中肯定都有值),而且我找不到数据库文件中字符串定义方式的任何差异,所以我被卡住了!任何建议都会很棒 :)
谢谢, 贝基
感谢大家对此的评论 - 花了几天时间对此感到沮丧,然后随机选择了一个不同的模拟器并且它运行良好。所以最好的猜测是,当我将项目指向 iOS 14 -> iOS 15 时,模拟器变得很混乱。经验教训 - 如果我要对项目进行重大更改,请务必擦除模拟器!