Stumperを取得しました(少なくとも私にとって)。コアデータ管理オブジェクトは、再起動するまで関連オブジェクトを表示しません。Simulator
私は、iOS 5.0 w/ARCとCore DataをUIManagedDocumentの中に使用しています。
私はエンティティ(Person)に対して多対多の関係(人と呼ばれる)を持つエンティティ(グループ)を持っています。新しいグループを追加して新しいPersonを追加すると(Personの.group関係を新しいグループに設定する)、Personエンティティの述語を使用して関連する人物を検索することはできません。where( "group ==%@"、myGroup )。また、グループのaddPersonセッターを使ってみました。
XCodeシミュレータをシャットダウンして再実行すると、以前の実行で作成された関係が認識され、新しい人を既存のグループオブジェクトに追加することもできます。新しいグループを追加して、関係を見るためにSimulator(またはデバイス上で実行している場合はデバイス)をシャットダウンすることなく人を追加することはできません。
[group.people count]を実行すると、新しいグループと関連Personを追加した直後に、正しい番号が返されます。しかし、私は、アプリケーションを再起動するまで、述語でのフェッチは機能しません。
UIManagedDocumentのmanagedObjectContextがその関係を認識していないようです。コンテキストを保存し、context.parentContextを保存し、ドキュメントを保存しようとしました。それのどれも助けなかった。
いずれかのアイデアをいただければ幸いです!
モデルに逆の関係を設定しましたか? – Rog
はい。私はグループから人まで、人という名前の1対多を持っています。 PersonからGroupへの1対1の逆の名前付きグループ。 – Byron