CouchDB 创建视图

我们的"员工"数据库中有两名员工。

CouchDB创建视图1

假设雇员1和雇员2:

CouchDB创建视图2  CouchDB创建视图3

现在,打开Fauxton并转到所有文档,您将看到一个名为New View的块。

CouchDB创建视图4

单击新视图并填写必填字段:

CouchDB创建视图5

现在创建了视图。您可以按照以下命令进行验证并获得查看结果:

使用以下代码将文件创建为" app.js":

const express = require('express');
const bodyParser = require('body-parser');
const path = require('path');
const NodeCouchdb = require('node-couchdb');
const app = express();
app.set('view engine','ejs');
app.set('views', path.join(__dirname, 'views'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended:false}));
app.get('/', function(req,res){  res.send('Working........');
});
app.listen(3000, function(){
 console.log('Server is started om Port 3000');
});

执行以下代码:

node app

CouchDB创建视图6

打开本地浏览器: localhost: 3000

CouchDB创建视图7

1. 列出数据库

const express = require('express');
const bodyParser = require('body-parser');
const path = require('path');
const NodeCouchdb = require('node-couchdb');
const couch = NodeCouchdb({
  auth:{    user:'ajeet'    password:'12345'  }
});
couch.listDatabases().then(function(dbs){
  console.log(dbs);
});
const app = express();app.set('view engine','ejs');
app.set('views', path.join(__dirname, 'views'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended: false}));
app.get('/', function(req,res){
 res.send('Working........');
});
app.listen(3000, function(){
 console.log('Server is started on Port 3000');
});

CouchDB创建视图8

创建一个文件夹" view",然后在其中创建文件" index.ejs"它,具有以下代码:

Hello World!

现在在" app.js"文件中进行更改:

res.render('index');

CouchDB创建视图9 CouchDB创建视图10

2. 获取视图结果

CouchDB创建视图11

单击全部,然后单击API URL复制URL。

CouchDB创建视图12

现在转到app.js并使用以下内容更改代码:

const express = require('express');
const bodyParser = require('body-parser');
const path = require('path');
const NodeCouchdb = require('node-couchdb');
const couch = new NodeCouchdb({
  auth:{    user:"ajeet",
    password:"12345"  }
});
const dbName ='employees';
const viewUrl ='_design/all_employees/_view/all';
couch.listDatabases().then(function(dbs){
  console.log(dbs);
});
const app = express();
app.set('view engine','ejs');
app.set('views', path.join(__dirname, 'views'));
app.use (bodyParser.json());
app.use(bodyParser.urlencoded({extended:false}));
app.get('/', function(req,res){
 couch.get(dbName, viewUrl).then(
   function(data, headers, status){
     console.log(data);
     res.render('index',{customer:data });
   },
   function(err){
     res.send(err);   });
});
app.listen(3000, function(){
 console.log('Server is started on Port 3000');
});
    

CouchDB创建视图13

现在启动服务器,您将看到以下结果:

CouchDB创建视图14

3. 查看文档详细信息

使用以下代码编辑" app.js":

const express = require('express');
const bodyParser = require('body-parser');
const path = require('path');
const NodeCouchdb = require('node-couchdb');
const couch = new NodeCouchdb({
  auth:{
    user:"ajeet",    password:"12345"  }
});
const dbName = 'employees';
const viewUrl ='_design/all_employees/_view/all';
couch.listDatabases().then(function(dbs){
  console.log(dbs);
});
const app = express();
app.set('view engine','ejs');
app.set('views', path.join(__dirname, 'views'));
app.use (bodyParser.json());
app.use(bodyParser.urlencoded({extended:false}));
app.get('/', function(req,res){
  couch.get(dbName, viewUrl).then(function(data, headers, status){    console.log(data.data.rows);    res.render('index',{customer:data});},
  function(err){    res.send(err);  });
});
app.listen(3000, function(){
 console.log('Server is started on Port 3000');
}); 

输出:

CouchDB创建视图15

下一章:Java CouchDB连接

 我们可以使用Java编程语言连接到CouchDB。为了进行连接,我们使用 Ektorp 库,该库在CouchDB的顶部提供了一个持久层。在这里,我们将说明一个示例,在该示例中,我们进行连接,创建数据 ...