PouchDB - Récupérer un lot

Vous pouvez lire / récupérer plusieurs documents / en bloc à partir d'une base de données dans PouchDB en utilisant le allDocs() méthode.

Syntaxe

Voici la syntaxe d'utilisation du db.allDocs()méthode de PouchDB. Cette méthode accepte une fonction de rappel facultative.

db.allDocs()

Exemple

Voici un exemple de récupération de tous les documents dans une base de données nommée my_database qui est stocké localement, en utilisant db.allDocs()méthode. Cette méthode récupère le tableau de documents sous forme d'objets, pour obtenir le contenu de chaque document que vous devez appeler commedocs.rows.

//Requiring the package
var PouchDB = require('PouchDB');

//Creating the database object
var db = new PouchDB('my_database');

//Retrieving all the documents in PouchDB
db.allDocs(function(err, docs) {
   if (err) {
      return console.log(err);
   } else {
      console.log (docs.rows);
   }
});

Enregistrez le code ci-dessus dans un fichier avec le nom Read_All_Document.js. Ouvrez l'invite de commande et exécutez le fichier JavaScript en utilisantnode comme indiqué ci-dessous.

C:\PouchDB_Examples >node Read_All_Document.js

Cela lit tous les documents qui existent dans la base de données nommée my_databasequi est stocké localement. Le message suivant s'affiche sur la console.

[ 
   { 
      id: '001',
      key: '001',
      value: { rev: '1-9dc57f5faa7ea90eeec22eba8bfd05f5' } 
   },
   { 
      id: '002',
      key: '002',
      value: { rev: '1-9bf80afcedb9f8b5b35567292affb254' } 
    },
   { 
      id: '003',
      key: '003',
      value: { rev: '1-1204f108e41bf8baf867856d5da16c57' } 
   }
]

En général, comme indiqué dans le résultat ci-dessus, en utilisant allDocs() méthode, vous ne pouvez voir que le _id, key et _revchamps de chaque document. Cependant, pour inclure l'ensemble du document dans le résultat, vous devez définir le paramètre facultatifinclude_docs vrai comme indiqué ci-dessous.

//Requiring the package
var PouchDB = require('PouchDB');

//Creating the database object
var db = new PouchDB('my_database');

//Retrieving all the documents in PouchDB
db.allDocs({include_docs: true}, function(err, docs) {
   if (err) {
      return console.log(err);
   } else {
      console.log (docs.rows);
   }
});

L'exécution du code ci-dessus vous donne une liste de documents complets dans les documents spécifiés, comme indiqué dans le code suivant.

[ 
   { 
      id: '001',
      key: '001',
      value: { rev: '1-9dc57f5faa7ea90eeec22eba8bfd05f5' },
      doc: { 
         name: 'Ram',
         age: 23,
         Designation: 'Programmer',
         _id: '001',
         _rev: '1-9dc57f5faa7ea90eeec22eba8bfd05f5' 
      } 
   },
   { 
      id: '002',
      key: '002',
      value: { rev: '1-9bf80afcedb9f8b5b35567292affb254' },
      doc: { 
         name: 'Robert',
         age: 24,
         Designation: 'Programmer',
         _id: '002',
         _rev: '1-9bf80afcedb9f8b5b35567292affb254' 
      } 
   },
   { 
      id: '003',
      key: '003',
      value: { rev: '1-1204f108e41bf8baf867856d5da16c57' },
      doc: { 
         name: 'Rahim',
         age: 25,
         Designation: 'Programmer',
         _id: '003',
         _rev: '1-1204f108e41bf8baf867856d5da16c57' 
      } 
   }
]

Lire un lot à partir d'une base de données distante

Vous pouvez également récupérer tous les documents de la base de données qui est stockée à distance sur le serveur (CouchDB).

Pour ce faire, au lieu d'un nom de base de données, vous devez transmettre le chemin d'accès à la base de données dans CouchDB, qui contient le document à lire.

Exemple

Supposons qu'il existe une base de données nommée my_databasedans le serveur CouchDB. Ensuite, si vous vérifiez la liste des bases de données dans CouchDB à l'aide de l'URLhttp://127.0.0.1:5984/_utils/index.html vous obtiendrez la capture d'écran suivante.

Voici un exemple de lecture de tous les documents qui existent dans une base de données nommée my_database qui est stocké sur le serveur CouchDB.

//Requiring the package
var PouchDB = require('PouchDB');

//Creating the database object
var db = new PouchDB('http://localhost:5984/my_database');

//Retrieving all the documents in PouchDB
db.allDocs({include_docs: true}, function(err, docs) {
   if (err) {
      return console.log(err);
   } else {
      console.log(docs.rows);
   }
});

Enregistrez le code ci-dessus dans un fichier avec le nom Remote_Read_AllDocument.js. Ouvrez l'invite de commande et exécutez le fichier JavaScript en utilisantnode comme indiqué ci-dessous.

C:\PouchDB_Examples >node Remote_Read_AllDocument.js

Cela lit le contenu du document donné qui existe dans la base de données nommée my_database qui est stocké dans CouchDB et s'affiche sur la console comme indiqué ci-dessous.

[ 
   { 
      id: '001',
      key: '001',
      value: { rev: '3-552920d1ca372986fad7b996ce365f5d' },
      doc: { 
         _id: '001',
         _rev: '3-552920d1ca372986fad7b996ce365f5d',
         name: 'Raju',
         age: 23,
         designation: 'Designer' 
      } 
   },
   { 
      id: '002',
      key: '002',
      value: { rev: '1-9af15cb11054ebe03a7816bf6c5e4128' },
      doc: { 
         _id: '002',
         _rev: '1-9af15cb11054ebe03a7816bf6c5e4128',
         name: 'Robert',
         age: 24,
         Designation: 'Programmer' 
      } 
   },
   { 
      id: '003',
      key: '003',
      value: { rev: '1-3033b5a78e915c52fd37325d42eb3935' },
      doc: { 
         _id: '003',
         _rev: '1-3033b5a78e915c52fd37325d42eb3935',
         name: 'Rahim',
         age: 25,
         Designation: 'Programmer' 
      } 
   } 
]