在我的应用程序中,我正在使用Alamofire,ObjectMapper和Realm。我希望实现,在映射响应后,数据(对象数组)在域中保持不变。我创建了一个类型为Object,Mappable的类,并且映射正在运行。数据以域编写,并且写事务中的域中没有错误。如果我从领域查询数据,我会得到我保存的对象,但每个属性都是空的。你知道为什么在映射成功时不保存数据吗?
AlamofireManager.Configured
.request(.GET, URLs.sharedInstance.getContactsUrl())
.responseArray("contactHeaders") { (response: Response<[ParticipantData], NSError>) in
if let participantsArray = response.result.value{
successHandler(participantsArray)
do{
try self.realm.write{
self.realm.add(participantsArray, update: true)
}
}
catch let err as NSError {
print("Error with realm: " + err.localizedDescription)
}
}
答案 0 :(得分:2)
定义Realm数据模型类时,必须确保声明其属性为dynamic
。这会将属性公开给ObjC代码,并允许值保持不变。