私は魔法の記録を使ってコアデータ操作を容易にしています。魔法の記録でデータをインポートするときに重複する項目を避ける
- (BOOL) MR_importValuesForKeysWithObject:(id)objectData;
または
+ (id) MR_importFromObject:(id)data;
:私たちは魔法レコードヘルパーメソッドを使用している場合、今
{
"cars": [
{
"name": "Corolla",
"brand": {
"name": "Toyota"
},
"price": 20000
},
{
"name": "Pirus",
"brand": {
"name": "Toyota"
},
"price": 50000
},
{
"name": "RAV-4",
"brand": {
"name": "Toyota"
},
"price": 30000
},
{
"name": "Golf",
"brand": {
"name": "VW"
},
"price": 40000
},
{
"name": "Polo",
"brand": {
"name": "VW"
},
"price": 20000
}
]
}
:私たちはこのようなJSONのセットを持って、そしてコアデータモデルがまったく同じに定義されて想像してみて
車の5つのエントリとブランドの5つのエントリとしてインポートされます。
しかし、私たちのCore Dataモデルでは、Car-Brandの関係は多対多であり、Brandのname属性はユニークであると考えられているので、Carの5つのエントリとBrandの2つのエントリが必要ですトヨタとVW)。
私の質問は、コアデータをインポート中にデータの一意性を維持する方法です。ユニークな属性のような、コアデータモデルで定義できるものですか?マジカルレコードのインポートメソッドをオーバーライドする必要がありますか?
これについての回答がありましたか? – Fogmeister
私は、Marcus S. Zarraのhttp://forums.pragprog.com/forums/90/topics/2875に基づいてこの問題をプログラム的に解決しなければならないと確信しています –
http://www.cimgf.com/ 2012/05/29/importing-data-made-easy/'relatedByAttribute'キーを追加し、それをキーとして扱うべきプロパティにマップすることができます... – ChickensDontClap