美文网首页
使用express+mongoose开发简单的blog

使用express+mongoose开发简单的blog

作者: 索索是个索索 | 来源:发表于2018-08-14 21:59 被阅读0次

    最近工作上需要使用Nodejs开发一些小的demo,有些数据使用数据库进行存储,就用了express+mongoose,这里使用博客这个小例子记录一下:

    目录结构如下
    目录结构

    安装

    开发前先安装mongodb数据库,然后新建一个目录,安装express+mongoose

    npm install --save express mongoose
    

    开发前先安装mongodb数据库,安装和启动百度就可以

    mongoose 是使用nodejs对mongodb数据库的操作进行了抽象和封装,有以下几个概念:SchemaModelDocument
    Schema: 模式, 类似于关系数据库中的表的概念
    Model: 模型 负责和底层MongoDB数据库进行交互
    Document文档 表示存储在MongoDB中的数据的一对一映射。每个文档都是其模型的一个实例

    接下来先起一个node 服务:


    API server.js

    然后建立Schema和Model

    blogModel.js
    mongoose.model()第一个参数是类似关系数据库中的表名,在数据库中建立时默认会加s,即在数据库中呈现的是blogs 数据集合

    然后写API的处理函数


    blogControllers.js

    当新增blog的时候可以看到先 new blog(),这个blog就是前面的
    module.exports = mongoose.model('blog', blogSchema);

    每条博客数据都是一个Document,都是blogModel的一个实例,但是注意在查询、删除、修改等操作的时候不需要再new一个Model实例,Model的原型上提供了好多方法可以使用,具体可以查看mongoose文档。

    接下来就是将服务器和mongodb数据库连接到一起了

    mongoose.connect("mongodb://localhost:27017/blogDB", { useNewUrlParser: true });
    

    其中数据库端口默认是27017,可以自行更改

    然后就可以启动node server,如果没有报错信息的话就可以测试接口是否正确了,这里使用postman进行接口测试

    postman

    可以看到新增一条数据后返回的就是新增的这条数据
    在Robomongo(mongodb数据库可视化工具)中可以看到数据已经存储进去


    Robomongo

    到这里就算结束了,刚开始写文章所以可能表述和格式都比较乱,有问题可以在评论区交流
    再推荐下postman这个工具,测试API非常好用,还可以mock数据,有chrome 插件和桌面应用,大家可以下载试试

    参考
    mongoose官方文档

    相关文章

      网友评论

          本文标题:使用express+mongoose开发简单的blog

          本文链接:https://www.haomeiwen.com/subject/mtdbbftx.html