首先准备好一个空白的Express项目,可以看一下这篇文章创建一个Express项目
新建一个plugins文件夹,在里面新建一个db.js
还是一样的写法
// 直接导出一个函数,该函数接收一个app对象
module.exports = app => {
const mongoose = require("mongoose"); // 导入mongoose模块
// 连接数据库函数
mongoose.connect('mongodb://127.0.0.1:27017/demo',()=>{
})
}
来到入口文件index.js导入数据库连接
// 引入express
const express = require("express");
// 创建一个express实例
const app = express();
// 导入数据库连接
require("./plugins/db")(app);
// 导入后端路由
require("./routes/admin/index")(app);
// 启动监听方法
// 第一个参数为监听的端口号,第二个参数是一个回调函数,里面表示的是启动之后做什么
app.listen(3000, () => {
console.log("http://localhost:3000");
})
创建数据库模型
新建一个models文件夹用来存放数据库模型
在里面新建一个User.js文件定义用户模型:
const mongoose = require("mongoose"); // 导入mongoose
// 定义该模型字段
const schema = new mongoose.Schema({
userName: {
type: String
}
})
module.exports = mongoose.model("User",schema) // 导出该模型
这样写好之后,哪里需要用它,就在哪里引用就行
使用数据库模型来到路由文件admin/index.js
// 直接导出一个函数,该函数接收一个app对象
module.exports = app => {
const express = require("express");
const router = express.Router(); // express子路由
const User = require("../../models/User");// 引入User数据模型
// 定义一个get路由
router.get("/inde",async (req,res) => {
res.send("1")
})
// 在上面定义好各种子路由,最后再把子路由都挂载到"/admin/api"这个路由下
app.use("/admin/api",router)
}
现在可以使用User数据模型进行CRUD的操作了
// 直接导出一个函数,该函数接收一个app对象
module.exports = app => {
const express = require("express");
const router = express.Router(); // express子路由
const User = require("../../models/User");// 引入User数据模型
// 定义一个get路由
router.get("/index",async (req,res) => {
// const model = await User.create(req.body) // 添加
// const model = await User.update(req.body) // 修改
// const model = await User.delete(req.body) // 添加
const model = await User.find() // 查询
res.send(model)
})
// 在上面定义好各种子路由,最后再把子路由都挂载到"/admin/api"这个路由下
app.use("/admin/api",router)
}



