MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Nie można nadpisać modelu `users` po skompilowanym węźle js

Zaktualizuj deklaracje wymagania, aby były spójne zarówno w plikach tras, jak i w paszporcie:const User = require('../model/users'); . Sprawa ma znaczenie!

Wygląda na to, że nie używasz prawidłowej terminologii mangusty. Na podstawie ich dokumentacji , należy to zaimplementować mniej więcej w następujący sposób.

const mongoose = require('mongoose');
const bcrypt = require('bcryptjs');
const config = require('../config/database');

//User Schema
const UserSchema = mongoose.Schema({
  name: {
    type:String
  },
  email: {
    type:String,
    required:true
  },
  username: {
    type:String,
    required:true
  },
  password: {
    type:String,
    required:true
  }
});

UserSchema.statics.getUserById = function(id,callback)
{
  return this.findById(id,callback);
};

UserSchema.statics.getUserByUsername = function(username,callback){
  const query = {username: username}
  return this.findOne(query,callback);
};
UserSchema.statics.addUser = function(newUser,callback){
  bcrypt.genSalt(10,(err,salt)=>{
    if(err)
    {
      throw err;
    }
    bcrypt.hash(newUser.password,salt,(err,hash)=>{
      newUser.password=hash;
      newUser.save(callback);
    });
  });
};

module.exports = users = mongoose.model('users',UserSchema);;


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. mangusta :znajdź dane, zapętlając tablicę modeli

  2. Mongoose wygasa dane, ale zachowaj w bazie danych

  3. Mongodb - Mapa-Reduce - Pełne dane nie są zwracane

  4. Limit wstawiania zbiorczego Mongodb w Pythonie

  5. Nodejs / Express — uruchamianie mojej aplikacji:express.createServer() jest przestarzałe