跟踪不会产生结果的WHERE子句值

时间:2015-08-11 16:57:53

标签: node.js sequelize.js

我有一个功能可以检查一个给定的电子邮件地址是否存在于" user"表。我使用sequelize的findone方法来做到这一点。此方法非常简单,可以在表中查找特定值。但是,我喜欢做的是跟踪那个表中没有的电子邮件地址。我不确定是否有任何可以拦截此事件的事件。但我的谷歌尝试并没有产生任何解决方案。所以任何帮助都表示赞赏。这是我的代码

function IsUserExist(email, callback)
{
    var userModel = sequelize.define('user', {
       email_address: Sequelize.STRING(255)             
    },
    { timestamps: false,
      freezeTableName: true 
    });

    userModel.findOne({
       where: { email_address: emailAddress }
    })
    .then(function(users){                         
       callback();
    })          
    .catch(function(err){
       console.log("Error while accessing user table");
    })
    .done();    
}

1 个答案:

答案 0 :(得分:0)

所以,我终于弄清楚该怎么做了。基本上,如果findOne不产生任何结果,则“then”方法的参数为null。所以,在我的情况下,如果查询没有返回任何结果,“users”为null。如果是,“用户”包含记录。