3

と の 2 つのテーブルがあるBoxとしItemます。ボックスには多くのアイテムが含まれる場合がありますが、1 つのアイテムには 1 つのボックスしかありません。ボックスが指定された配列にあるすべてのアイテムを取得したいと思います。どうすればそれができますか?ItemCD では、Box への接続を表すクラスの述語とプロパティによってそれを行います。

バージョン0.81を使用しています

4

1 に答える 1

6

更新 (2014 年 10 月 27 日)

双方向の関係がサポートされるようになりました。Realm のドキュメントを参照してください: http://realm.io/docs/cocoa/latest#inverse-relationships

元の答え

この時点で、双方向の関係を明示的にリンクする必要があります。次に例を示します。

@class Box;

@interface Item : RLMObject
@property Box *box;
@end

RLM_ARRAY_TYPE(Item);

@interface Box : RLMObject
@property RLMArray<Item> *items;
@end

...

Item *item = [[Item alloc] init];
Box *box = [[Box alloc] initWithObject:@[@[item]]];
item.box = box;

今後、このパターンを簡素化する計画があります。

この回答はGitHubから取得されました

于 2014-07-25T18:56:33.993 に答える