0

次のような CoreData モデルがあります。

Object A:
  Results -- A one to many relationship to an indeterminate number of Object B's.

Object B:
  Object Name -- A string.  (potentially not unique)
  Parent -- A singular relationship with Object A.

特定のオブジェクト A と探しているオブジェクト名の文字列がわかっている場合に ObjectB を返す NSPredicate の作成に苦労しています。次のことを試しましたが、常にこのエラーが発生します。

「'NSInvalidArgumentException'、理由:「フォーマット文字列を解析できません...」

request.predicate = [NSPredicate predicateWithFormat:@"NameString == %@, SELF IN %@", NameString, ObjectA.results];

request.predicate = [NSPredicate predicateWithFormat:@"(NameString == %@) IN %@", NameString, ObjectA.results];

等々...

これは単純で明白なことのように思えますが、私は Core Data に不慣れで、これを示す例を見つけるのに苦労しています。

ありがとう!

4

1 に答える 1

0

%K を使用する必要があります。

述語にこのようなものが必要な場合があります

 NSString enitity=@"ObjectA";
 NSString attribute=@"results";
 request.predicate = [NSPredicate predicateWithFormat:@"NameString == %@, SELF IN %K.%K", NameString, enitity,attributes];

ここを見て。

于 2012-05-21T09:33:59.027 に答える