在 class 中访问 class 的数据
Access data of class in class
我有这个类:
class FacebookDB: Object {
dynamic var userName: String = ""
dynamic var profilePicture: String = ""
}
class TwitterDB: Object {
dynamic var userName: String = ""
dynamic var profilePicture: String = ""
}
class UserDB: Object {
dynamic var id = 0
override class func primaryKey() -> String {
return "id"
}
dynamic var userName: String = ""
dynamic var firstName: String = ""
dynamic var lastName: String = ""
dynamic var email: String = ""
dynamic var facebookAccount = FacebookDB?()
dynamic var twitterAccount = TwitterDB?()
}
我在 userName
中输入一个值后
//user value come from facebook
let testUser = UserDB()
let realm = try! Realm()
testUser.FacebookAccount?.userName = user.userName
print(user.userName)
print(testUser.FacebookAccount?.userName)
这是输出:
vivieng
nil
为什么我不能打印 testUser.FacebookAccount?.userName
?
顺便说一句,我可以访问 UserDB
中的每个值,但 FacebookDB
的 none 或 TwitterDB
,知道吗?
我终于找到了处理这个问题的方法。
我需要创建一个这样的值:
let facebookAccount = FacebookDB()
然后把我想要的都放进去:
facebookAccount.userName = user.userName
最后复制class里面的class:
testUser.FacebookAccount = facebookAccount
瞧,现在可以了!
我有这个类:
class FacebookDB: Object {
dynamic var userName: String = ""
dynamic var profilePicture: String = ""
}
class TwitterDB: Object {
dynamic var userName: String = ""
dynamic var profilePicture: String = ""
}
class UserDB: Object {
dynamic var id = 0
override class func primaryKey() -> String {
return "id"
}
dynamic var userName: String = ""
dynamic var firstName: String = ""
dynamic var lastName: String = ""
dynamic var email: String = ""
dynamic var facebookAccount = FacebookDB?()
dynamic var twitterAccount = TwitterDB?()
}
我在 userName
//user value come from facebook
let testUser = UserDB()
let realm = try! Realm()
testUser.FacebookAccount?.userName = user.userName
print(user.userName)
print(testUser.FacebookAccount?.userName)
这是输出:
vivieng
nil
为什么我不能打印 testUser.FacebookAccount?.userName
?
顺便说一句,我可以访问 UserDB
中的每个值,但 FacebookDB
的 none 或 TwitterDB
,知道吗?
我终于找到了处理这个问题的方法。
我需要创建一个这样的值:
let facebookAccount = FacebookDB()
然后把我想要的都放进去:
facebookAccount.userName = user.userName
最后复制class里面的class:
testUser.FacebookAccount = facebookAccount
瞧,现在可以了!