我想使用Expres.js
和knex.js
渲染两个表,该表仅用于一个get函数,以便在一个HTML模板中使用两个表中的数据。当我仅查询一个表(学校或学生)但不知道如何处理两个表时,此方法有效。
有什么建议吗?
app.get('/schools', function(req, res) {
knex.select()
.from('schools', 'students')
.then(function(schools, students) {
res.render('schools', {
schools: schools,
students: students
});
}).catch(function(error) {
console.log(error);
});
});
最佳答案
您的方法确实有效,但是我建议您使用这种惯用法以避免promise hell(有关更多示例,请参阅链接。)
router.get("/schools",function(req,res){
var schools
knex("schools").select().then(function(ret){
schools=ret
return knex("students").select()
}).then(function(students){
res.render("schools",{
students: students,
schools: schools
})
})
})