router.get("/createOrder/:id", async (req, res) => {
let id = req.params.id;
let data = {
title: `Skapa order för kund id ${id}`,
KId: id
};
data.res = await eshop.createOrder(id);
res.render("eshop/createOrder", data);
});
router.post("/eshop/createOrder/:id", urlencodedParser, async (req, res) => {
let id = req.params.id;
console.log(id);
await eshop.addProductToOrder(req.body.produktid, req.body.antal, id);
res.redirect("/eshop/product");
});
<%- include("header", {title: title}); %>
<h1>Create order</h1>
<pre><%#= JSON.stringify(res, null, 4) %></pre>
<form class="label-left" method="post" action="/eshop/createOrder/1">
<fieldset>
<legend>Create order</legend>
<label for="produktid">Produktid</label>
<input id="produktid" type="text" name="produktid">
<label for="antal">Antal</label>
<input id="antal" type="number" name="antal">
<input type="submit" name="doit" value="Create">
</fieldset>
</form>
<%- include("footer"); %>
好的,所以基本上是因为我点击“创建”按钮后得到“不能POST / eshop / createOrder / 1”。我真的不知道造成这种情况的原因,有人知道吗?据我所知,POST应该没问题
它看起来像带有express和EJS的nodeJS项目。
你能告诉我们app.js吗?
如果您的代码看起来真的如此,则无法在.ejs / .html中调用该路由。它是客户端和服务器端之间的混合体。
你能告诉我们你的代码结构吗?