【发布时间】:2018-06-13 03:37:26
【问题描述】:
我正在使用 Realm 离线存储数据。我需要根据主键获取行,但我得到 nil 作为响应。 这是我的模型类
import UIKit
import RealmSwift
class DCContactListModel: Object {
@objc dynamic var mProfile_pic:String?
@objc dynamic var mSalutation:String?
@objc dynamic var mStatus:String?
@objc dynamic var mTitle:String?
@objc dynamic var mUid:String?
//property
var mUserIndex: Int?
var mIsSelected = false
override class func primaryKey() -> String {
return "mUid"
}
func initWithUserChatDictionary(userDictionary:Dictionary<String, Any>) -> DCContactListModel{
if let profile_pic = userDictionary["profile_pic"] {
mProfile_pic = profile_pic as? String
}
if let salutation = userDictionary["salutation"] {
mSalutation = salutation as? String
}
if let status = userDictionary["status"] {
mStatus = status as? String
}
if let title = userDictionary["title"] {
mTitle = title as? String
}
if let uid = userDictionary["uid"] {
mUid = uid as? String
}
return self
}
}
我在这里添加代码以使用对象访问数据
let primaryKey = "8687tuyguyhytu6ruf76fyt7"
let realm = try! Realm()
let specificPerson = realm.object(ofType: DCContactListModel.self, forPrimaryKey: primaryKey)
print(specificPerson!)
但是将特定的人设为 nil 但是当我签入表时,这个主键就在那里。有人可以帮忙吗?
【问题讨论】:
标签: ios swift realm primary-key