使用 ejs 时如何使用 url 查询字符串
Posted
技术标签:
【中文标题】使用 ejs 时如何使用 url 查询字符串【英文标题】:How can I use url query string when working with ejs 【发布时间】:2018-05-25 01:38:57 【问题描述】:有没有办法在 ejs 中的 href 中传递查询字符串?我希望能够单击一个链接并在我的数据库查询中使用链接参数。这是我目前正在使用的代码
//ejs view
<% if (data) %>
<% data.forEach(function(car) %>
<div class="card mb-3">
<a href="/cars/:id">
<div class="card-body text-center text-capitalize">
<div class="card-title"><%= car.brand %></div>
<p class="card-text text-muted"><%= car.color %> / <%= car.engine_type %></p>
</div>
</a>
</div>
<% ) %>
<% %>
在我的路由文件中,我想这样查询
router.get('/cars/:id?', function(req, res)
var carId = req.params.id;
res.locals.connection.query('SELECT * FROM cars WHERE id = ?', [carId], function(err, row)
if(err)
console.log(err);
else
res.send(row);
);
);
现在我在运行我的应用程序时得到 304 状态,因为我没有传回 id。我怎样才能把它传回去?我不知道,也没有成功搜索。
【问题讨论】:
【参考方案1】:最终发现可以在href中传递id,与ejs显示car对象的方式一样。在这种情况下,href="/cars/<%= car.id %>"
【讨论】:
以上是关于使用 ejs 时如何使用 url 查询字符串的主要内容,如果未能解决你的问题,请参考以下文章
在express3里用ejs模版引擎时,如何使其支持'.html'后缀