NodeJS 转译回原始URL

iqxoj9l9  于 2022-11-22  发布在  Node.js
关注(0)|答案(1)|浏览(173)

我 希望 获得 有关 以下 一 种 情况 的 帮助 :
我 有 ' * * user-profile - edit * * ' 页面 , 它 也 呈现 了 数据 库 中 一些 信息 :第 一 次
但是 该 页面 有 几 个 表单 , 它们 具有 不同 的 提交 按钮 , 例如 :

... ... 还有 ... ...


语言
哪个 链接 到 不同 的 authController , 例如 :

指令 集

现在 , 如果 一切 正常 , authController 之 一 将 返回 用户 到 " * * user-profile - edit * * " :

指令 集
问题 是 网页 网址 显示 :

语言
... ... 或者 ... ...


指令 集
因此 , 此时 我 无法 在 " * * user-profile - edit * * " 页面 中 获取 城市 信息 。
如何 将 用户 返回 到 * * 用户 配置 文件 编辑 * * , 而 不是 * * 用户 配置 文件 编辑 一 * * 或 * * 用户 配置 文件 编辑 二 * * ?

  • 谢谢 - 谢谢
oxosxuxt

oxosxuxt1#

router.get正在从数据库中获取信息,因此您可以将数据呈现到user-profile-edit.ejs(如果使用ejs模板引擎)。

router.get("/user-profile-edit", authController.isLoggedIn, (req, res) => {
  connection.query("SELECT * FROM cities", (error, rows) => {
    if (req.user) {
      res.render("user-profile-edit", {
        user: req.user,
        data: rows
      });
    } else {
      res.redirect("login");
    }
  })
});

“views”文件夹中的user-profile-edit.ejs示例

<h1>Welcome, <%= user %></h1>
<div>
  <% if(data.length) { %>
    <table>
      <tr>
        <th>ID</th>
        <th>City</th>
        <th>Population</th>  
      </tr>
        <% for(let i = 0; i < data.length; i++) { %>
          <tr>
            <td><%= (i+1) %> </td>
            <td><%= data[i].city %></td>
            <td><%= data[i].population %></td>
          </tr>
        <% } %>
    </table>
  <% } %> 
</div>

相关问题