出于某种原因,当我运行程序时,我的RLMArray是零。 我能够在RLM浏览器中看到数据,并链接appropriatley。
这里有什么我可能会遗失的吗?
@interface HMFAlbum : RLMObject
@property NSInteger persistentId;
@property RLMArray<HMFTrack> *tracks;
@property RLMArray<HMFRange> *ranges;
@end
@interface HMFTrack : RLMObject
@property NSInteger persistentId;
@property HMFAlbum *album;
@end
RLM_ARRAY_TYPE(HMFTrack)
@interface HMFRange : RLMObject
@property NSInteger persistentId;
@property (readonly) RLMLinkingObjects *albums;
@end
RLM_ARRAY_TYPE(HMFRange)
答案 0 :(得分:2)
预期持久RLMObject
实例的实例变量将为nil
,因为属性getter直接从Realm文件读取值。实例变量仅用于保存到Realm之前的对象,并在该点之后保持nil
。
Realm文档的Debugging部分涉及此主题,并提到了一个LLDB脚本,可用于在Xcode中调试时显示持久对象的属性值。使用-description
格式说明符格式化对象时,NSLog
使用的模型类上的%@
方法也将按预期显示属性值。