1

この動作を実装するための最適なソリューションを探しています:

顧客というエンティティがあり、顧客は 1 つしかないため、コア データには 1 つのエントリしかありません。

これを実装するための最良のソリューションは何ですか? 作成する前にエンティティが存在するかどうかを毎回チェックしますか?

どうもありがとう

4

3 に答える 3

2

前述のように、単一のオブジェクト [NSUserDefaults standardUserDefaults] に使用できます。

ただし、CoreData を使用する場合は、次のように記述します。

Customer* customer = [Customer MR_findFirst];
if (customer != nil)
{
    //do something with it
} else
{
    [Customer MR_importFromObject:JSONToImport];        
}

BDW:

MR_importFromObjectメソッドは、特定の ID を持つエンティティが存在するかどうかを自動的にチェックします (ID キーの場合は、エンティティ名と "ID" の属性を使用します。(この場合は"customerID" ) または "mappedKeyName" という名前のキーを使用します)。

そして、このキーを持つエンティティが既に存在する場合、Magical Record はこのエンティティを更新するだけです。

したがって、エンティティでこの値を指定する場合は、次のように記述します。

[Customer MR_importFromObject:JSONToImport];
于 2013-08-28T17:10:22.863 に答える