Mettez à jour vos instructions require pour qu'elles soient cohérentes dans les routes et le fichier de passeport :const User = require('../model/users');
. La casse compte !
Il semble que vous n'utilisiez pas la bonne terminologie de la mangouste. Basé sur leur documentation , cela devrait être implémenté à peu près comme suit.
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);;