【发布时间】:2018-08-16 09:00:26
【问题描述】:
使用对象映射器和领域作为数据库。
我从我的服务器获取一个 JSON,其中包含我需要更新一些属性然后将其发布到服务器并更新的人员类。
我的 person 模型 类,我无法声明对象列表,这是主要问题
import RealmSwift
import ObjectMapper
import Realm
class person:Object, Mappable{
dynamic var firstNameFa:String=""
dynamic var lastLoginDate:String=""
dynamic var lastNameFa:String=""
dynamic var phone:String=""
dynamic var email:String?//=""
//var refercode:String?
dynamic var id:String=""
dynamic var identityId:String=""
//var password:String?
dynamic var userAccount:UserAccount?
dynamic var account:Account?
dynamic var code:String?
dynamic var address:Address? // tttt
var photo:Image?
dynamic var smartPhone="IPHONE"
var defaultAddressList:List<DefaultAddress>?
//dynamic var defaultAddressList = [DefaultAddress]() // this line is my problem
//dynamic var defaultAddressList:[DefaultAddress] = []
dynamic var serverToken=""
convenience required init?(map: Map) {
self.init()
}
func mapping(map: Map) {
firstNameFa <- map["firstNameFa"]
lastNameFa <- map["lastNameFa"]
identityId <- map["identityId"]
phone <- map["phone"]
email <- map["email"]
id <- map["id"]
userAccount <- map["userAccount"]
address <- map["address"]
defaultAddressList <- map["defaultAddressList"]
lastLoginDate <- map["lastLoginDate"]
account <- map["account"]
code <- map["code"]
photo <- map["photo"]
//defaultAddressList <- map["defaultAddressList"]
}
override class func primaryKey() -> String? {
return "id"
}
person 在我正在检索并放入 personJson 的数据中
self.personJson = json["data"] as AnyObject
最后投射到我的模型中
self.psInfo = Mapper<person>().map(JSONObject: self.personJson)!
我的 DefaultAddress 是 nill,因为我在 model.all 中将其声明为错误的方式,因为领域
【问题讨论】:
-
是的,ObjectMapper 不支持领域列表。所以要么你必须自己创建转换类,要么在github上签出
ObjectMapper-realm -
什么是转换类??
标签: ios swift realm objectmapper