를 업데이트하고 나는이 영역의 모델 클래스가있을 때 영역 속성 값을 보존 다음과 같이나는 스위프트 3 영역의 응용 프로그램에서 일하고 있어요 객체
class User: Object {
dynamic var userName = ""
dynamic var userURL = ""
dynamic var userThumbnailURL = ""
dynamic var isRegistered = false
var userID = RealmOptional<Int>()
override class func primaryKey() -> String? {
return "userID"
}
}
그럼 난 추가 해요 값을. 사용자가 내가 로컬 영역 데이터베이스에서 특정 사용자를 업데이트하고있어 등록을 완료하면 1
let user = User()
user.userName = fields["userName"] as! String
user.userURL = fields["userURL"] as! String
user.userThumbnailURL = fields["userThumbnailURL"] as! String
user.userID.value = fields["userID"] as? Int
try! uiRealm.write {
uiRealm.add(user, update: true)
}
그런
검색어 : 내 서버에서 그들을 얻고 로컬 데이터베이스에 저장하고 있습니다 등록 된 사용자 (isRegistered = true
)입니다.
uiRealm.beginWrite()
let updatingUser = uiRealm.objects(User).filter("userID = %d", self.userId)
let user = updatingUser.first
book?.isRegistered = true
try! uiRealm.commitWrite()
을하지만 내 문제는 새 서버 응답이 수신 될 때 나는 isRegistered
속성이 false가됩니다 검색어 1을 운영하는 다시 점이다 :이 값은 로컬 영역 데이터베이스에 저장됩니다. 어떻게 이것을 피할 수 있습니까?
RealmOptional 값은 primaryKey 일 수 있습니까? –
그렇습니다. 원격 서버 db와 동일한 기본 키이기 때문에 로컬 데이터베이스에서도 동일합니다. –