我正在尝试使用Express
和名为Postgres
的{{1}}和ORM
来创建登录系统
这是我的代码:
user.js
Sequelize
这是我的articles.js
var express = require('express');
var bodyParser = require('body-parser');
var db = require('../config/database');
var path = require('path');
var router = express.Router();
var {alumno, profesor} = require('../models/articles');
router.use(bodyParser.urlencoded({ extended: false }));
router.use(bodyParser.json());
router.post("/doregister_profesor", function(req, res) {
console.log("FIRST REQUEST ======>", req.body);
console.log("STEP 1 ======>", Date.parse(req.body.edad));
const edad = Date.parse(req.body.edad);
try {
db.sequelize.sync().then(() =>
profesor.create({
username : req.body.username,
password: req.body.password,
email: req.body.email,
pdni: req.body.pdni,
pdniinput: req.body.pdniinput,
edad: new Date(Date.now()),
grado: req.body.grado
})
);
var newProfesor = new profesor({
username : username,
password: password,
email: email,
pdni: pdni,
pdniinput: pdniinput,
edad: new Date(Date.now()),
grado: grado
});
profesor.createProfesor(newProfesor, function(){
if(err) throw err;
console.log(user)
});
res.render('entrar_profesores');
} catch (e) {
console.log(e);
}
});
passport.js
var db = require('../config/database');
const profesores = db.sequelize.define('profesores', {
username: db.Sequelize.STRING,
password: db.Sequelize.STRING,
email : db.Sequelize.STRING,
pdni: db.Sequelize.STRING,
pdniinput: db.Sequelize.INTEGER,
edad : db.Sequelize.DATEONLY,
grado : db.Sequelize.STRING
},
);
var profesor = module.exports = {'profesores': profesores};
var alumno = module.exports = {'alumnos': alumnos};
module.exports.createAlumnos = function(newAlumno, callback){
bcrypt.genSalt(10, function(err, salt) {
bcrypt.hash(newAlumno.password, salt, function(err, hash) {
newAlumno.password = hash;
newAlumno.save(callback);
});
});
}
module.exports.createProfesor = function(newProfesor, callback){
bcrypt.genSalt(10, function(err, salt) {
bcrypt.hash(newProfesor.password, salt, function(err, hash) {
newProfesor.password = hash;
newProfesor.save(callback);
});
});
}
我收到以下错误消息:
var passport = require('passport');
var LocalStrategy = require('passport-local').Strategy;
const {profesores, alumnos} = require('../models/articles');
const config = require('../config/database');
var express = require('express');
let session = require('express-session')
let router = express.Router();
module.exports = function(passport){
console.log('llego hasta aqui 1', profesores);
passport.use('local', new LocalStrategy({
usernameField: 'email',
passwordField: 'password',
passReqToCallback: true
}, function(req, email, password, done){
profesores.findOne({where: {email: email, password:password}}).then(function(user) {//function(err, user){
console.log('consulta hecha');
//console.log(user);
if (!user) {
return done(null, false);
}
/*if (!user.validPassword(password)) {
return done(null, false);
}*/
return done(null, user);
});
})
);
passport.serializeUser(function(user, done) {
console.log('llego hasta aqui 32 ', err);
done(null, user.id)
console.log('=================== ',err);
});
try{
passport.deserializeUser(function(id, done) {
console.log('llego hasta aqui ===============');
profesores.findById(id).then(function(user){
done(user);
});
console.log('llego hasta aqui 53');
});
}catch (err) {
console.log(err);
}
}
答案 0 :(得分:0)
您的出口似乎有误:
for tag in soup.find_all('div', class_='js-diff-progressive-container'):
print 1
for div in tag.find_all('div'):
id = div.get('id')
if id:
id = id.split('-')
print id
if id[0] == 'diff':
div2 = div.find_all('div')
class_div = div2[0]
if class_div.get('data-path'):
changed_class.append(class_div.get('data-path'))
可能是您想要做的,请注意,module.exports.profesor = profesores;
module.exports.alumno = alumno;
未定义。
还请注意,您在alumno
和passport.js
中的导入不匹配。