zoukankan      html  css  js  c++  java
  • egg-mongoose --- nodejs

    项目

    egg + mongoose


    项目结构

    配置


    egg 安装模块

    npm i egg-mongoose --save

    config/pulgin.js

    exports.mongoose = {
      enable: true,
      package: 'egg-mongoose',
    };

    config/config.default.js

    exports.mongoose = {
        url: 'mongodb://127.0.0.1/demo',
        //链接到本地的MongoDB,demo是我本地数据库的名字,根据自己数据库名字进行填写即可
        options: {},
    };

    数据建模


    model/user.js

    // app/model/user.js
    module.exports = app => {
        const mongoose = app.mongoose;
        const Schema = mongoose.Schema;
       
        const UserSchema = new Schema({
          userName: { type: String  },
          password: { type: String  }
        });
        // 以上定义了表数据的类型
       
        return mongoose.model('User', UserSchema, 'userInfo');
        // model(参数1,参数2,参数3)参数3是你数据表中需要操作的表的名字,
        // 比如我现在要操作的是名字叫mongoTest里面的叫userInfo的表
    }

    service


     service/user.js

    'use strict';
    // app/service/user.js
    const Service = require('egg').Service;
    
    class UserService extends Service {
      async findUserList() {
        return this.ctx.model.User.find()
      }
    }
    module.exports = UserService;

    controller


     controller/user.js

    'use strict';
    
    const Controller = require('egg').Controller;
    
    class UserController extends Controller {
      async findUser() {
        // console.log(this.ctx.service.user.findUserList())
        // let ret = await this.ctx.service.user.findUserList()
        // this.ctx.body = ret
    
        this.ctx.body = await this.ctx.service.user.findUserList()
    
      }
    }
    
    module.exports = UserController;

    router.js


    'use strict';
    
    /**
     * @param {Egg.Application} app - egg application
     */
    module.exports = app => {
      const { router, controller } = app;
      router.get('/findUser', controller.user.findUser);
    };

    查询结果


     

  • 相关阅读:
    第 28 章 CSS3 多列布局
    实例解读什么是Redis缓存穿透、缓存雪崩和缓存击穿
    深入浅出一致性Hash原理
    要想深入理解mysql索引?这16个点你必须要了解!
    为什么不要尝试用int来存手机号?
    mysql-覆盖索引
    聚集索引,非聚集索引,覆盖索引 原理
    mysql use index、ignore index、force index用法
    HashMap在JDK1.8版本尾插法实现解析
    redis slot 槽点
  • 原文地址:https://www.cnblogs.com/zyulike/p/10095568.html
Copyright © 2011-2022 走看看