【问题标题】:Core Data - Inconsistent preloaded Data核心数据 - 不一致的预加载数据
【发布时间】:2016-03-28 17:52:52
【问题描述】:

我在 Core Data 中预加载了以下 Pronoun 实体:

一旦我将 JSON 文件中的数据加载到数据库中,我会打印以控制该实体中的所有项目,包括它们的兄弟姐妹,以及正确的数据:

TOTAL PRONOUNS: 12
tú()
ellas(ustedes, ellos, )
ellos(ellas, ustedes, )
ella(usted, él, )
ustedes(ellos, ellas, )
yo()
él(ella, usted, )
nosotras(nosotros, )
vosotros(vosotras, )
usted(ella, él, )
nosotros(nosotras, )
vosotras(vosotros, )

然后,我将.sqlite.sqlite-shm.sqlite-wal 复制到我的应用程序包中,然后再次打印这些实体,但没有得到相同的输出:

tú
ellas+ustedes+ellos
ellos+ellas
ella+él+usted
ustedes
yo
él+ella
nosotras+nosotros
vosotros+vosotras
usted
nosotros+nosotras
vosotras+vosotros

知道为什么会这样吗?

补充资料:

  • xcdatamodeld 应该是相同的。
  • 加载器应用是使用 swift 完成的,该应用使用 Objective-C 中的数据

【问题讨论】:

    标签: ios core-data


    【解决方案1】:

    在构建 siblings 关系之后,您似乎缺少对上下文的 save 调用。

    【讨论】:

    • 我正在将数据加载到很多实体中,在加载完每个实体后我调用save。将数据加载到每个实体后,我应该调用 save 吗?
    • 我在加载数据时尝试保存了几次,但我得到了相同的结果..
    • 看起来siblings 没有反向关系导致数据不一致。不明白为什么,但我添加了一个反向多对多关系,称为sibling,现在可以按需要工作。你还想要代码吗? (我假设你的意思是加载代词的代码,也许还有 json 文件结构)
    • 不,你找到了。据记载,关系需要反转。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-07-14
    • 2012-12-31
    • 1970-01-01
    • 1970-01-01
    • 2011-06-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多