简体   繁体   English

在Express中哪里可以找到Mongo Collection?

[英]Where to find Mongo Collection in Express?

I'm reviewing some old code I wrote in Express/Mongo/Mongoose (based on an online tutorial) and can't locate the portion of code which dictates which Collection in MongoDB gets written to. 我正在查看我在Express / Mongo / Mongoose中编写的一些旧代码(基于在线教程),并且找不到定位MongoDB中哪个Collection被写入的代码部分。

I have a Database, UsersDB and within that database there are several Collections. 我有一个数据库, UsersDB并且在该数据库中有多个集合。 The Collection that keeps growing every time the code executes user.save is the users Collection. 每当代码执行user.save时,集合就不断增长的user.saveusers集合。 But I can't find any reference in my code base to the users collection. 但是我在代码库中找不到对users集合的任何引用。

The only place in my code where I save a User is: 我的代码中保存User的唯一位置是:


var app = require('../app');
var util = require('util');
var User = require('../models/user'),
    Auth = User.Auth,
    Name = User.Name,
    Email= User.Email,
    Phone = User.Phone,
    Address = User.Address,
    Company = User.Company,
    PersonalData = User.PersonalData,
    Id = User.Id,
    Photo = User.Photo,
    Member = User.Member,
    CreditCard = User.CreditCard,
    UserObj = User.User;

var moment = require('moment');

var async = require('async');

. . . 
. . . 

exports.user_create_post = [
    (req,res, next) => {
        console.log("Request: " + util.inspect(req.body));
    },
    //VALIDATE
    body('mainEmail', 'Must be valid email.').isLength({min: 5}).trim(),

    //SANITIZE
    sanitizeBody('*').escape(),

    //POPULATE NEW DOCUMENT
    (req,res,next) => {
        const errors = validationResult(req);

        var auth = new Auth(
                dateEffective: {value: moment(Date.now()).format("YYYY-MM-DD hh:mm:ss SSS"), attr: {hidden: true, label: ""}},
                username: {"value": req.body.username, "attr": {hidden: false, label: "Username: "}},
                password: {"value": req.body.password, "attr": {hidden: false, label: "Password: "}},
                mainEmail: {"value": req.body.mainEmail, "attr": {hidden: false, label: "Email: "}}
            });
        var user = new UserObj(
            {authData: [auth]}
        );
        if (!errors.isEmpty()) {
            const errorFormatter = ({ location, msg, param, value, nestedErrors }) => {
                // Build your resulting errors however you want! String, object, whatever - it works!
                return `${location}[${param}]: ${msg}`;
              };
              const result = validationResult(req).formatWith(errorFormatter);
              if (!result.isEmpty()) {
                return res.json({ errors: result.array() });
              }
            }
            else {
                user.save(function(err){
                    if (err) { return next(err);}
                });
                res.redirect("http://localhost:4200/two-fa/"+user._id);
        }
    } 

I also have a Models module ( user.js ): 我也有一个Models模块( user.js ):


. . . 
. . . 
. . . 

module.exports = {
    Auth: mongoose.model('Auth', AuthSchema),
    Name: mongoose.model('Name', NameSchema),
    Email: mongoose.model('Email', EmailSchema),
    Phone: mongoose.model('Phone', PhoneSchema),
    Address: mongoose.model('Address', AddressSchema),
    Company: mongoose.model('Company', CompanySchema),
    PersonalData: mongoose.model('PersonalData', PersonalDataSchema),
    Id: mongoose.model('Id', IdSchema),
    Photo: mongoose.model('Photo', PhoneSchema),
    Member: mongoose.model('Member', MemberSchema),
    CreditCard: mongoose.model('CreditCard', CreditCardSchema),
    User: mongoose.model('User', UserSchema)
}

I did a search on my entire code, and nowhere is there any mention of users , which is the Collection that's getting written to. 我在整个代码中进行了搜索,没有任何地方提到users ,这是正在写入的Collection。

Where should I look to try to trace how the users collection is getting written to? 我应该在哪里寻找跟踪users集合如何写入的信息?

Thank you! 谢谢!

按照如何对接入-A-预先存在的收集与-猫鼬 ,如果到第三个参数mongoose.model没有提供,那么蒙戈自动“复数化”的型号名称给予集的名称。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM