多くの場所を持つトレイルで構成されるコアデータモデルがあります。RestKitも使用しています。トレイルを取得するための私のコードは次のようになります。
Trail *trail = [Trail findFirst];
私の問題は、これが毎回異なるトレイルを返すことです。[Trail findFirst]を3回続けて呼び出すと、次のようになります。
<Trail: 0xf489c70> (entity: Trail; id: 0xf489a60 <x-coredata://77BCA7AD-4C71-437D-8A7C-C047B8E64567/Trail/p1> ; data: <fault>)
<Trail: 0xf476ca0> (entity: Trail; id: 0xf489110 <x-coredata://77BCA7AD-4C71-437D-8A7C-C047B8E64567/Trail/p1> ; data: <fault>)
<Trail: 0xf48c660> (entity: Trail; id: 0xf48c430 <x-coredata://77BCA7AD-4C71-437D-8A7C-C047B8E64567/Trail/p1> ; data: <fault>)
[Trail allObjects]を実行すると、次に[TrailfindFirst]を呼び出したときに返される単一のTrailアイテムが表示されます。[Trail allObjects]をもう一度実行すると、次に[Trailfirst]を呼び出したときに返される別のTrailオブジェクトが表示されます。
これは私の心を曲げています。CoreDataはどのようにして毎回異なるエンティティを返すことができますか?