Mais conteúdo relacionado
Semelhante a さわってみよう Couchbase Lite (11)
さわってみよう Couchbase Lite
- 2. 自己紹介
★ iPhone App 開発やってます
★ どっちかというとCouchbaseファン
★ 趣味半分でCouchbase + Node.js
★ ブログ:http://ssdkfk.wordpress.com/
★ Tw:kazutoshi_u / Fb :kazutoshi.u
13年5月2日木曜日
- 13. コード比較
CouchDocument* doc = [db untitledDocument];
RESTOperation* ope = [doc putProperties: contents];
if (![ope wait]){
NSLog(@"SAVE error!!");
}else{
NSLog(@"SAVE success!!");
}
CBLDocument* doc = [database untitledDocument];
NSError* error;
if (![doc putProperties: contents error: &error]){
NSLog(@"Couldn't save the new item");
}
ドキュメントを保存する場合
TouchDB
Couchbase
Lite
13年5月2日木曜日
- 14. コード比較
Viewを使ってドキュメントを呼び出す場合
TouchDB
Couchbase
Lite
CouchDesignDocument* design = [db designDocumentWithName: @"Draft"];
CouchQuery* query = [design queryViewNamed: @"byDate"];
RESTOperation* op = [query start];
[op onCompletion: ^{
if (op.error) {
NSLog(@"erro!");
}
else{
for (CouchQueryRow* row in query.rows) {
NSDictionary *dic = row.value;
}
}
}];
CBLQuery* query = [[database viewNamed: @"byDate"] query];
for (CBLQueryRow* row in query.rows) {
NSDictionary* contents = row.value;
}
13年5月2日木曜日
- 15. コード比較
Viewを使ってドキュメントを呼び出す場合
TouchDB
Couchbase
Lite
CouchDesignDocument* design = [db designDocumentWithName: @"Draft"];
CouchQuery* query = [design queryViewNamed: @"byDate"];
RESTOperation* op = [query start];
[op onCompletion: ^{
if (op.error) {
NSLog(@"erro!");
}
else{
for (CouchQueryRow* row in query.rows) {
NSDictionary *dic = row.value;
}
}
}];
CBLQuery* query = [[database viewNamed: @"byDate"] query];
for (CBLQueryRow* row in query.rows) {
NSDictionary* contents = row.value;
}
その差9行!
13年5月2日木曜日
- 17. LiveQuery簡単!
self.liveQuery = [[database queryAllDocuments] asLiveQuery];
[self.liveQuery addObserver:self forKeyPath:@"rows" options:0 context:NULL];
LiveQuery登録
- (void) observeValueForKeyPath: (NSString*)keyPath ofObject: (id)object
change: (NSDictionary*)change context: (void*)context
{
if (object == self.liveQuery) {
for (CBLQueryRow* row in [object rows]) {
// update the UI
[self allGet];
}
}
}
通知受け取り
13年5月2日木曜日
- 19. CouchDBとSync
NSArray *repls = [database replicateWithURL:[NSURL URLWithString:@"http://127.0.0.1:5984/testdb"] exclusively:YES];
まさかの1行
13年5月2日木曜日
- 20. CouchDBとSync
NSArray *repls = [database replicateWithURL:[NSURL URLWithString:@"http://127.0.0.1:5984/testdb"] exclusively:YES];
まさかの1行
しかもSync後はLiveQueryも動いてくれます
13年5月2日木曜日