这是我在Node JS上的代码。您能举例说明我将在HTML代码中添加的内容。谢谢
exports.get = function(req, res){
db.all("SELECT * FROM f11", function(err,rows){
rows.forEach(function (row) {
console.log('row: ' + row.GIVENNAME);
});
// console.log(rows);
res.render('form11.ejs',{array:rows});
});
};

答案 0 :(得分:0)
如果你想获得一个id和查询,那么:
首先,您需要在请求查询中传递ID。像http://localhost/api/getUser?id=23
一样exports.getUser = function(req, res){
var user_id = req.query.id;
db.all("SELECT * FROM f11 WHERE id="+user_id, function(err,row){
console.log(row); // Since you'll only get one row
res.render('form11_detail.ejs',{data:row});
});
};
如果您添加此代码,然后只显示一个您可以使用'getUser'功能并显示所有数据,您可以使用'get'功能。
答案 1 :(得分:0)
我看到你正在使用sqlite3 npm包用于sqlite。
查看代码后,您可以尝试这样做以达到您想要的效果:
在get
route
id
以获得这样的参数server.js
app.get('/legone/survey/surveyform/form11/:id', form11.get);
并且,像这样编写get
函数:
exports.get = function(req,res){
var id = req.params.id;
db.all("SELECT * FROM f11 WHERE id = ?",id, function(err,rows){
rows.forEach(function (row) {
console.log('row: ' + row.GIVENNAME);
});
res.render('form11.ejs',{array:rows});
});
};
您的route
将是这样的:
http://localhost/legone/survey/surveyform/form11/23
其中23是id
。把你想要的东西放在它的位置。
如果您使用ajax
来电,它将如下所示:
$http.get('/legone/survey/surveyform/form11/23')
.success(function(response){
//handle response
})
.error(function(error){
//handle error
});
您可以通过POSTMAN或类似的方式测试路线。
有关详细信息,您可以阅读Sqlite3 Wiki API Documentation或直接了解参数和回调here。
此外,在查看您的代码后,您需要进行大量重组。您应该在一个文件中定义所有路由,然后在app.js中使用它。
这样的事情:
//define all the routes that start from '/legone/survey/surveyform' in one file
//(let it be 'surveryRoutes.js')
//and then include it in your app.js.
var surveyRoutes = require(./routes/surveyRoutes);
app.use('/legone/survey/surveyform',surveyRoutes);