2017-01-25 8 views
0

sq.js:Sequelizeモデルクラスの参照エラー

var Sequelize = require('sequelize'); 
var sequelize = new Sequelize('postgres://chandan:[email protected]:5432/diary'); 

var User = sequelize.define('user', { 
    username: { 
    type: Sequelize.STRING, 
    field: 'username' // Will result in an attribute that is firstName when user facing but first_name in the database 
    }, 
    password: { 
    type: Sequelize.STRING 
    } 
},{ 
timestamps: false, 
}); 

User.sync({force: true}).then(function() { 
    // Table created 
}); 

module.exports = User; 

app.js:

var seq = require('./routes/sq'); 

passport.use(new passportLocal.Strategy(function(username,password, done){ 
    User.findOne({username: username}, function (err, user) { 
     if (err) { return done(err); } 
     if (!user) { 
     return done(null, false, { message: 'Incorrect username.' }); 
     } 
     if (!user.validPassword(password)) { 
     return done(null, false, { message: 'Incorrect password.' }); 
     } 
     return done(null,{ id:username, name:username}); 
    }); 
})); 

私はエラーが取得しています:にReferenceError:ユーザーが

答えて

3

その定義されていませんがapp.jsでユーザーモデルをseqと宣言しているためですあなたの宣言を変更します。

var User = require('./routes/sq'); 

変数Userしか働い

+0

うんsq.jsに住んでいる......が、今のクエリが実行されていない......それはコンソールに表示されます(デフォルト):SELECT "id"、 "username"、 "password" FROM "users" AS "user" LIMIT 1; –