CloudKit 保存将 Int(0) 和 String("") 存储为空 [object Object] 的操作
Posted
技术标签:
【中文标题】CloudKit 保存将 Int(0) 和 String("") 存储为空 [object Object] 的操作【英文标题】:CloudKit save operation storing Int(0) and String("") as empty [object Object] 【发布时间】:2016-06-14 20:53:57 【问题描述】:从现在开始的几天后,CloudKit 开始将值为 0 的整数和值为 "" 的字符串存储为文字 [object Object]。
幕后一切正常,但 CloudKit 网页界面显示 [object Object] 而不是 0 和 ""。
尝试重新创建记录类型但没有成功。
除此之外,如果您尝试使用 cloudKit Web 界面手动将 Int(64) 保存为 0(零),它不会存储 0 值,而是会存储 NIL。 "" 字符串也一样。
还有其他人遇到同样的问题吗?!
【问题讨论】:
是的,我也看到了!!很烦人。 这个字符串显然来自 javascript。我发现了这一点:从对象到字符串的默认转换是“[object Object]”。这是另一个例子说明 cloudKit 是多么不稳定和未经测试,特别是对于一个已经超过三年的 Apple 产品! 是的,真的很烦人......当时刚刚记录了苹果的一个错误。测试一些东西真是太痛苦了,因为我需要在数据库中手动修改变量以模拟结果......在他们修复之前根本无法做到。 最后,这似乎是固定的!!! 【参考方案1】:这只是在仪表板中查看数据时的显示问题。 CloudKit 中存储的数据没有问题。显示错误是一个已知问题,将很快修复。
【讨论】:
不仅是在仪表板上查看数据时的问题。如果您通过 Web 界面尝试将 Int(64) 保存为 0(零),则不会保存 0 值,但会保存 NIL 值。 "" 字符串也一样。当您认为 cloudKit 中的所有布尔值都是 Int(64) = 0 时,将 0 变为 NIL 只会使一切崩溃。以上是关于CloudKit 保存将 Int(0) 和 String("") 存储为空 [object Object] 的操作的主要内容,如果未能解决你的问题,请参考以下文章
将 CloudKit 记录保存到本地文件保存除 CKAsset 之外的所有字段
如何使用 Cloudkit 将字典(或任何其他复杂结构)保存到 iCloud 中?