0
我在我的应用程序中使用Realm,并且我遇到了一些问题。 服务器返回应该在我的数据库中更新的数据。例如:领域:更新部分RLMArray
{ projects:[{ id:1, name:project1, floors:[ { id:1, name:floor1} ] }]}
它说我应该更新与ID = 1项目name
和floors
领域。如果来自DB的项目有floor
且id = 1,则应该更新它,否则应该添加。但它不应该从地板阵列中删除其他物体。 我做了什么:
Project *project = [Project projectFromDictionary:dictionary];
[realm beginWriteTransaction];
[Project createOrUpdateInDefaultRealmWithValue:project];
[realm commitWriteTransaction];
但这种代码在我的项目中删除其他楼层。我该做什么?
项目类:
@interface Project:RLMObject
@property NSString *name;
@property NSString *projectID;
@property RLMArray<Floor *><Floor> *floors;
@end
楼:
@interface Floor:RLMObject
@property NSString *name;
@property NSString *floorID;
@end
RLM_ARRAY_TYPE(Floor)