react项目 之 server-mongod数据库框架
官网安装mongodb
无脑操作 下一步 附上安装教程
操作数据库
1、依赖包下载
mongoose 操作数据库插件
blueimp-md5 md5加密
npm install -s mongoose blueimp-md5
2、连接数据库
vscode插件Mongo Snippets for Node-js
!mdbc
一键生成
// 连接数据库
const mongoose = require('mongoose');
mongoose.Promise = global.Promise;
mongoose.connect('mongodb://localhost:27017/zhiping_test', {
useNewUrlParser: true,
useCreateIndex: true,
useUnifiedTopology: true
}, (err) => {
if (!err) {
console.log('MongoDB Connection Succeeded.')
} else {
console.log('Error in DB connection: ' + err)
}
});
3、得到特定字段Model
通过显示指定文档结构
1.字段名
2.类型
3.是否必须
//定义schema(描述文档结构)
const userSchema=mongoose.Schema({
//指定文档结构,字段名,类型,是否必须
username:{type:'String',require:true},
password:{type:'String',require:true},
type:{type:'String',require:true}
})
4、定义Model(操作集合)
调用 mongoose.model(arg1,arg2) 生成构造对应的函数UserModel
参数
1.第一个参数:单个集合名
2.第二参数:步骤3所生成的schema
//确定集合名称为 user ,生成构造函数
const UserModel = mongoose.model('user',userSchema)
以上为固定格式
写于models
=》 生成多个操作数据库集合的Model模块
只需将其向外暴露即可
exports.UserModel=UserModel
exports.ComModel=ComModel
以下的方法写于路由中 routes/index.js
5、增删改查操作
具体看文档,只需将对应操作封装即可
function add(){
new UserModel({username:'ccc',password:md5('123'),type:'dashen'}).save((err,doc)=>{
console.log(doc)
})
}
function find(){
UserModel.find({username:'cc'},function(err,docs){
console.log(docs)
})
}