下载安装mongodb
地址 https://www.mongodb.com/try/download/enterprise
安装mongoose 用来操作mongodb
地址 http://www.mongoosejs.net/docs/index.html
npm -S install mongoose
安装mongodb 用来可视化操作mongodb
地址 https://robomongo.org/
- 上图所示 schema 是数据模型
- db是mongodb数据配置
数据库配置
var mongoose = require('mongoose');
// 链接mongo
const DB_URL = 'mongodb://127.0.0.1:27017/test';
mongoose.connect(DB_URL,{useUnifiedTopology:true,useNewUrlParser: true},function (err) {
if(err){
console.log("数据库连接失败!",err);
}else{
console.log("数据库连接成功!");
}
})
module.exports = mongoose;
构建模型
const mongoose = require("../db/config")
// var mongoose = require('mongoose');
var Schema = mongoose.Schema;
const schema = new Schema({ //db中有一个Schema的构造函数 设置需要的字段格式
// key: value 的设置
name: {
type: String, //类型首字母大写
required: true //定义必须存在
},
price: {
type: Number,
default: 0 //默认为0
},
costPrice: {
type: Number,
default: 0
}
});
module.exports = mongoose.model("Shop_info",schema)
引用
var express = require('express');
var router = express.Router();
const shopInfo = require("../schema/shop_info")
router.get('/', function(req, res, next) {
// 查询数据
shopInfo.findOne({ 'name': '酸梅汤' }, function (err, person) {
if (err) return handleError(err);
// Prints "Space Ghost is a talk show host".
res.send({a:person});
});
});
router.get('/add/shopinfo', function(req, res, next) {
let query = req.query
//生成对象保存数据
const shopInfoModel = new shopInfo(query);
shopInfoModel.save()
res.send(query);
});
//添加字段
router.get('/update/shopinfo', function(req, res, next) {
// let query = req.query
shopInfo.findOneAndUpdate({_id:"606d2d62e7ec970e98c0135e"},{
$set: {nums:10}
},(e)=>{
res.send(e);
})
});
module.exports = router;