2014-11-13 1 views
3

CBLModel 개체를 만들어 couchbase lite에 저장하려고합니다. 문서가 오류없이 저장되었지만 데이터베이스에서 문서를 검색 할 때 문서의 속성은 항상 nil입니다.신속한 couchebase 라이트 CBLModel 문서 속성이 저장되지 않음

// 모델

class TestModelUser: CBLModel { 
    var userName:NSString? 
} 

// 생성하고 저장

let userModel:TestModelUser = TestModelUser(newDocumentInDatabase: db) 
userModel.userName = "test user name 10" 
userModel.setValue(NSStringFromClass(TestModelUser), ofProperty: "type") 
let saved = userModel.save(&error) 
if saved { 
    println("saved") 
}else{ 
    if let err:NSError = error { 
     println(err.localizedDescription) 
    } 
} 

//

let dbView:CBLView = db.viewNamed("userView") 
dbView.setMapBlock({ (document, emit) -> Void in 
    emit(document["_id"], document) 
    if let docType = document["type"] as? String { 
     if docType == NSStringFromClass(TestModelUser) { 
      emit(document["_id"], document) 
     } 
    } 
    }, version: "5") 

let queryResult1:CBLQueryEnumerator = db.viewNamed("userView").createQuery().run(&error) 
for row:CBLQueryRow in queryResult1.allObjects as [CBLQueryRow] { 
    let user:TestModelUser = TestModelUser(forDocument: row.document) 
    if let uName = user.userName { 
     println(uName) 
    } 
} 

를 가져 오지와 user.userName 항상 nil 일, 어쩌면 다른 방식이있다 문서를 저장 하시겠습니까?

답변