在我的AppDelegate的斯威夫特3:领域创造更多的对象,而不是更新等植物学一个
let realm = try! Realm()
print("number of users")
print(realm.objects(User.self).count)
if !realm.objects(User.self).isEmpty{
if realm.objects(User.self).first!.isLogged {
User.current.setFromRealm(user: realm.objects(User.self).first!)
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let viewController = storyboard.instantiateViewController(withIdentifier :"TabBar") as! CustomTabBarController
self.window?.rootViewController = viewController
}
} else {
try! realm.write { realm.add(User.current) }
}
我创建的用户,只有当对面有应用无用户对象
感谢这个answer更新我的对象以下面的方式
public func update(_ block: (() -> Void)) {
let realm = try! Realm()
try! realm.write(block)
}
但事实证明它创建新的用户对象。如何总是更新现有的而不是创建新的对象?
请注意,我用User.current
,因为我的目标是单
后,我登录和退出,它打印的用户总数= 2,这意味着更新已经存在的用户创建一个新的
我没有在我以前的数据库相关的类管理器的其他地方添加对象,我设法修复它自己,但我认为这个答案值得接受:) – DCDC