I am working on a node+passport.js authentication. I make a simple login/signup app. It's working fine but, it stores only username and password.
How can I store the other Form Fields like Phone number, email, hobbies, gender into database through a signup.html page with working login passport authentication? Can anybody have solution for that so I can store all the fields in the database....
//my schema is :--
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var userSchema = mongoose.Schema({
local : {
username : String,
gender : String,
phone : String,
email : String,
password : String
}
});
userSchema.methods.generateHash = function(password) {
return bcrypt.hashSync(password, bcrypt.genSaltSync(8), null);
};
userSchema.methods.validPassword = function(password) {
return bcrypt.compareSync(password, this.local.password);
};
var User = mongoose.model('user', userSchema);
module.exports = User;
In this code I use schema of email, username, password, gender phone and also given fields in signup.html page. but it stores only username and password fields only.........
Open passport.js file ( gernally inside config folder)
find this line of code.
Add option
passReqToCallback
and you can access all request body data fromreq.body
:We can also try in this way.Its working in right way.In
passport.js
file write below code :