Realm的Java版本有一个非常有用的方法:
createOrUpdateAllFromJson(RealmObject,JSONArray)
它接受一组JSON对象,并将它们全部放在数据库中,很好地处理创建或更新逻辑。
iOS版本的Realm中是否有相同的功能?如果没有,那么实现等效功能的最佳方法是什么?
答案 0 :(得分:2)
不,在基于Cocoa的绑定中,此方法有直接的对应关系,但您可以迭代数组并为方法提供值,这些方法处理描述每个模型对象的字典或数组。
通过Realm.create(_, value: _, update: _
):
let objects = jsonArray.map { realm.create(MyRealmObject.self, value: $0, update: true) }
通过+[RLMObject createOrUpdateInRealm:withValue:]
:
RLMRealm *realm = [RLMRealm defaultRealm];
NSMutableArray *objects = [NSMutableArray new];
for (NSDictionary *jsonDict in jsonArray) {
RLMObject *myRealmObject = [MyRealmObject createOrUpdateInRealm:realm withValue:jsonDict];
[objects addObject:myRealmObject];
}