findOne没有得到任何logging

login: function (req, res) { var username = req.param('username'); var password = req.param('password'); User.findOne({username: username}, function (err, user) { if (err || !user) { return res.status('401').send("User with username \"" + username + "\" not found. Are you registered?"); } ... 

给我undefineduser对象,我总是在错误语句结束。 usernamevariables具有正确的值。 我创buildlogging的方法是有效的(所以我和DB的连接是正常的),当我查看数据库时,logging在那里,所有正确的数据。

我也试过User.find().where({username: username}).exec(function (err, user) {没有成功…

任何有关我可以在哪里查看(debugging或排除)或者可能是问题原因的build议?

乔纳森对err的评论指出了我的正确方向。 我的User模型如下:

 attributes: { // Relations passports: { model: 'Passport' }, //... other attributes 

而且我也有Passport模型中声明的belongsTo关系。 err提供Details: Error: ER_BAD_FIELD_ERROR: Unknown column 'users.passports' in 'field list' ,当然在我的数据库的user表中我没有passports列。

结论:我在User模型中有不必要的实体关系声明。 这对于MongoDB来说工作得很好,但显然与MySQL事情完全不同。