2

核心數據應用程序,即Syncs用戶數據從CloudKitCoreData父子上下文衝突管理

我們有兩個核心數據上下文

  1. 主要背景: - UI(插入,更新,從用戶刪除)
  2. 子Context: - 即獲取從雲套件的變化,一旦完成 保存主要背景的變化。

問題

自父子設置從父的變化沒有得到體現的孩子。因此,如果父級上下文得到更新,孩子正在將更改同步到CloudKit,那麼孩子不知道這些更改。

說孩子方面正試圖在記錄a上傳到CloudKit同時,如果用戶修改了相同的記錄如下

  • 用戶更新: - 當孩子保存記錄 父新的更新都將丟失。

  • 用戶刪除: - (我們只是將其標記爲已刪除)孩子重新保存孩子,因爲它沒有獲得標記爲已刪除的屬性。

    問題

    1. 燦孩子莫名其妙地知道父母的更新? 我可以在保存之前刷新對象嗎?

    2. 在父 - 子設置中,孩子是否總是覆蓋父更改而不會發生合併衝突?

回答

-2

看一看這個教程,它可以幫助。

Multiple Context swift tutorial

+0

它只是概念的概述。這對我的情況沒有幫助。 – user3519594

+1

如果你有問題的答案,你應該明確地解釋它;你也可以鏈接到源代碼。只是發佈鏈接不是一個答案。 – Mundi

+0

我使用了刷新對象的東西,但是在保存孩子的同時還面臨着問題 – user3519594

1
  1. 設置上下文的automaticallyMergesChangesFromParent財產。
  2. 選擇合適的合併策略。