无法将模型的结果传递给索引文件

时间:2017-09-25 17:52:55

标签: javascript node.js

我尝试让我的节点mysql设置正常工作。在我的模型 event.js 中,我有以下代码:

if b in q:
    print "id:",data['id']
    print "quest:",q
    print "result:",qa['terms'][0]

在我的 index.js 中,我尝试从getEvents返回结果。

Event.getEvents = function(results) { 
  db.query("select * from com_event_details where type='featured'", function(error, results, fields ) { 
   return results; 
  }); 
};

});

不幸的是,这不起作用。不知何故,我无法将结果从模型传递到索引文件。

感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

您正在回复Event.getEvents,但在该功能中您没有使用回调。

请改用:

Event.getEvents = function(callback) {
  db.query("select * from com_event_details where type='featured'", callback); 
};


app.get('/', function(req, res) { 
  Event.getEvents(function(error, results) { 
    res.send(results); 
  }); 
});

答案 1 :(得分:0)

您可以在节点中使用Promises返回结果,如下所示

function getResult() {
    return new Promise(function(resolve, reject) {
        try {
            db.query("select * from com_event_details where type='featured'", function(error, results, fields) {
                resolve(results);
            });
        } catch (ex) {
            reject(ex);
        };
    });
}