class Movie < ActiveRecord::Base
validates_as_choice :rating, 5
end
结果
var userid = 7;
var um;
sequelize.query("select user_money from ecs_users u where u.user_id = ?", {replacements: [userid], type: sequelize.QueryTypes.SELECT}).then(function(data) {
console.log('Inside um is '+data[0].user_money);
um = data[0].user_money;
});
//how to get the result at here ???
console.log('Outside um is '+um);
console.log('testtesttest');
如何在外面获得结果?
答案 0 :(得分:0)
sequelize.query()
是一个异步函数。如果要使用结果,则应在promise链中进行,而不是在外部。无论如何,你都无法可靠地知道query()
需要多长时间才能运行。
如果您绝对必须在承诺链之外使用它,请创建一个布尔值,告诉您是否还有结果。只有在promise链中有结果后,才将Boolean设置为true。在promise链之外,您可以检查Boolean的值并决定是否要等待(例如,使用setTimeout()
再试一次)或忽略或抛出错误或其他内容。