如何在Realm中存储NSObject类?

时间:2016-09-20 10:17:08

标签: ios realm

我正在将Realm集成到我的应用中。我需要知道如何在custom class中存储RLMObject subclass对象。

1 个答案:

答案 0 :(得分:4)

允许在Realm中保存的唯一属性是the Documentation

  

Realm支持以下属性类型:BOOL,bool,int,   NSInteger,long,long long,float,double,NSString,NSDate,NSData,   和NSNumber用特定类型标记。

如果你需要存储另一个对象(你提到了一个自定义类的实例),官方支持的方法是创建一个RLMObject的子类(假设你在Objective-C上),并在您的父对象中的属性,创建引用,如文档中提到的示例:

#import <Realm/Realm.h>

@class Person;

// Dog model
@interface Dog : RLMObject
@property NSString *name;
@property Person   *owner;
@end
RLM_ARRAY_TYPE(Dog) // define RLMArray<Dog>

// Person model
@interface Person : RLMObject
@property NSString             *name;
@property NSDate               *birthdate;
@property RLMArray<Dog *><Dog> *dogs;
@end
RLM_ARRAY_TYPE(Person) // define RLMArray<Person>

在这个例子中,我们在Dog模型中有一个属性owner。我认为这就是你要找的东西。