PouchDB-ドキュメントの更新
いつでも、新しいフィールドであるPouchDBにドキュメントを作成します _rev が生成され、それはとして知られています revision marker。ザ・_revの値は一意の乱数であり、ドキュメントに変更を加えるたびに、 _rev 変更されます。
PouchDBの既存のドキュメントは、 (_rev)。そのためには、まず最初に_rev更新するドキュメントの値。次に、取得したコンテンツとともに更新するコンテンツを配置します。_rev 新しいドキュメントに値を入力し、最後にこのドキュメントをPouchDBに挿入します。 put() 方法。
例
PouchDBにIDを持つドキュメントがあると仮定します 001人の詳細があります。このドキュメントを更新するには、そのリビジョン番号が必要です。したがって、ドキュメントの内容を取得するには、次のコードを使用します。
//Requiring the package
var PouchDB = require('PouchDB');
//Creating the database object
var db = new PouchDB('my_database');
//Reading the contents of a Document
db.get('001', function(err, doc) {
if (err) {
return console.log(err);
} else {
console.log(doc);
}
});
上記のコードを実行すると、次の出力が表示されます。
{
_id: '001',
_rev: '3-552920d1ca372986fad7b996ce365f5d',
name: 'Raju',
age: 23,
designation: 'Designer'
}
今、を使用して _rev キーの値を更新できます。age次のコードに示すように、」から26まで。
//Requiring the package
var PouchDB = require('PouchDB');
//Creating the database object
var db = new PouchDB('my_database');
//Preparing the document for update
doc = {
age: 26,
_rev: '3-552920d1ca372986fad7b996ce365f5d',
}
//Inserting Document
db.put(doc);
//Reading the contents of a Document
db.get('001', function(err, doc) {
if (err) {
return console.log(err);
} else {
console.log(doc);
}
});
上記のコードを名前のファイルに保存します Update_Document.js。コマンドプロンプトを開き、を使用してJavaScriptファイルを実行しますnode 以下に示すように。
C:\Pouch_Examples>node Update_Document.js
これにより、という名前のデータベースに存在する特定のドキュメントのコンテンツが更新されます。 my_databaseこれはローカルに保存されます。コンソールに次のメッセージが表示されます。
{
name: 'Raju',
age: 26,
designation: 'Designer',
_id: '001',
_rev: '2-61b523ccdc4e41a8435bdffbb057a7a5'
}
リモートデータベース内のドキュメントの更新
サーバー(CouchDB)にリモートで保存されているデータベース内の既存のドキュメントを更新することもできます。
これを行うには、データベース名の代わりに、更新されるドキュメントを含むCouchDB内のデータベースへのパスを渡す必要があります。
例
名前の付いたデータベースがあるとします my_databaseCouchDBサーバーで。次に、URLを使用してCouchDB内のデータベースのリストを確認するとhttp://127.0.0.1:5984/_utils/index.html 次のスクリーンショットが表示されます。
名前の付いたデータベースをクリックする my_database、次のスクリーンショットを見ることができます。ここで、このデータベースにIDを持つドキュメントが含まれていることがわかります。001。
以下は、IDが「」であるドキュメントの経過時間を更新する例です。001」という名前のデータベースに存在します my_database これはCouchDBサーバーに保存されます。
//Requiring the package
var PouchDB = require('PouchDB');
//Creating the database object
var db = new PouchDB('http://localhost:5984/my_database');
//Preparing the document for update
doc = {
age: 26,
_rev: '3-552920d1ca372986fad7b996ce365f5d',
}
//Inserting Document
db.put(doc);
//Reading the contents of a Document
db.get('001', function(err, doc) {
if (err) {
return console.log(err);
} else {
console.log(doc);
}
});
上記のコードを名前のファイルに保存します Remote_Update_Document.js。コマンドプロンプトを開き、を使用してJavaScriptファイルを実行しますnode 以下に示すように。
C:\PouchDB_Examples >node Remote_Update_Document.js
これにより、という名前のデータベースに存在する特定のドキュメントのコンテンツが更新されます。 my_databaseこれはCouchDBに保存されます。コンソールに次のメッセージが表示されます。
{
_id: '001',
_rev: '2-b9640bffbce582c94308905eed8bb545',
name: 'Raju',
age: 26,
designation: 'Designer'
}