iOS 6.0.1のCoreData管理対象オブジェクトコンテキストをSQLiteストアに保存すると、奇妙な「CoreDataは永続的なストア間の関係をサポートしていません」という例外が発生します。これは、モデル内のQuotesとAbstractSourcesの間の1対1の関係に関係しています。実行時には、QuoteとBookに関係します(BookはAbstractSourceから継承します。すべてモデルエディターで正常に機能します)。
私は同様の報告を調査し、報告された原因を取り上げました。
- 私は、assignObject:toPersistentStore:を使用して、QuoteとBookの両方を同じ永続ストアに割り当てているので、どちらも割り当てられていないままです。
- エラーの説明は、すべての「絶対」x-coredata IDが同じプレフィックスで始まることを示しています(例:「x-coredata:// 82B3BEB3-60F2-4912-AC80-11AAD29CFF99 /」)。したがって、実際には1つのストアのみが使用されているようです。 。
私の質問は次のとおりです。
- 他に確認する必要があるものはありますか(おそらく、ソースでタッチ/制御していないAbstractSourceに関連していますか?initWithEntity:insertIntoManagedObjectContextをそれぞれ呼び出してQuoteとBookの両方を作成しています)。
- エラーの説明には、いくつかの「相対的な」x-coredata ID(「x-coredata:///...」の形式)も含まれていることに気付きました。「絶対」プレフィックス(上記の例を参照)が同じであっても、絶対形式は常に「クロスデータベース」と見なされる可能性がありますか?もしそうなら、「絶対」と「相対」のx-coredata IDの選択にどのように影響を与えることができますか?
あなたの注意のためにThx(大いに)!