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);
    };

    查询结果


     

  • 相关阅读:
    HDU 4396
    Vijos1603 迷宫
    BZOJ1087 [SCOI2005] 互不侵犯King
    BZOJ2208 [JSOI2010] 连通数
    BZOJ1051 [HAOI2006] 受欢迎的牛
    BZOJ2751 [HAOI2012] 容易题(easy)
    BZOJ1015 [JSOI2008] 星球大战starwar
    BZOJ1012 [JSOI2008] 最大数maxnumber
    BZOJ1050 [HAOI2006] 旅行comf
    BZOJ2761 [JLOI2011] 不重复数字
  • 原文地址:https://www.cnblogs.com/zyulike/p/10095568.html
Copyright © 2011-2022 走看看