Javascript 如何在模型和控制器之间发送带有sequelize的查询结果

Javascript 如何在模型和控制器之间发送带有sequelize的查询结果,javascript,node.js,model-view-controller,express,sequelize.js,Javascript,Node.js,Model View Controller,Express,Sequelize.js,我的问题如下: 我有nodejs+expressjs,然后用生成了一个mvc项目,所以我有mysql+sequelize+gulp应用程序 我连接到数据库并在模型中进行了查询,但无法将结果传递给控制器并在屏幕上打印 相反,我得到一个错误,变量未定义 模型(regiones.js)的代码是: 控制器(home.js)的代码是: 控制台打印模型中的所有元组,但在控制器中打印: resu is : undefined 我搜索了很多,但这似乎是我的一个理论问题 谢谢:)您的encontar函数不会返回

我的问题如下:

我有nodejs+expressjs,然后用生成了一个mvc项目,所以我有mysql+sequelize+gulp应用程序

我连接到数据库并在模型中进行了查询,但无法将结果传递给控制器并在屏幕上打印

相反,我得到一个错误,变量未定义

模型(regiones.js)的代码是:

控制器(home.js)的代码是:

控制台打印模型中的所有元组,但在控制器中打印:

resu is : undefined
我搜索了很多,但这似乎是我的一个理论问题


谢谢:)

您的
encontar
函数不会返回任何内容,这就是您未定义的原因

查询是异步的,因此需要向返回的承诺添加处理程序:

db.regiones.encontrar().then(function (resu) {...

索引将在浏览器中打印该行和回溯。我忘了提了。谢谢!这解决了我的问题。Y通过以下方式更改了encontrar:
encontrar:function(){return sequelize.query('SELECT*FROM comunas',{raw:true})}
,并且在控制器中:
db.regiones.encontrar()。然后(function(filas){
Cannot read property 'length' of undefined TypeError: Cannot read property 'length' of undefined at C:\Users\Erick\farma1\app\controllers\home.js:15:17 at Layer.handle [as handle_request] 
resu is : undefined
db.regiones.encontrar().then(function (resu) {...