如何将mysql数据呈现到jade文件?

如何将mysql数据呈现到jade文件?,mysql,node.js,express,pug,Mysql,Node.js,Express,Pug,我使用express~4和mysql存储数据。我能够创建用户数据库和用户信息表。当我点击注册页面的创建按钮时,数据库正在更新,我被重定向到用户页面,该页面应呈现包含用户信息(即电子邮件地址和用户名)的show.jade文件。但它显示用户未定义。管理员页面locahost:3000/myusers按预期显示数据库中所有用户的列表,但不显示用户名 请帮忙 根文件夹中的app.js文件 app.js文件 index.jade文件 视图/用户文件夹中的index.jade文件 h1 All Us

我使用express~4和mysql存储数据。我能够创建用户数据库和用户信息表。当我点击注册页面的创建按钮时,数据库正在更新,我被重定向到用户页面,该页面应呈现包含用户信息(即电子邮件地址和用户名)的show.jade文件。但它显示用户未定义。管理员页面locahost:3000/myusers按预期显示数据库中所有用户的列表,但不显示用户名

请帮忙

根文件夹中的app.js文件

app.js文件

index.jade文件

视图/用户文件夹中的index.jade文件

    h1 All Users

    ul

     each user in users

       li: a(href="/myusers/#{user.email}") #{user.userName} (#{user.email})
    h1 new user

    form(method="POST" action="/myusers")

      table

        tr

          td User Email:

          td

            input#email(type="email", name="email")

        tr

          td Username:

          td

            input#userName(type="text", name="userName")

        tr

          td Password:

          td 

            input#password(type="password", name="password")

        tr

          td

            button(type="submit") Create
    h1 #{user.email}

    ul

      li Email:#{user.email}

      li Username:#{user.usernName} 
signup.jade文件

视图/用户文件夹中的index.signup文件

    h1 All Users

    ul

     each user in users

       li: a(href="/myusers/#{user.email}") #{user.userName} (#{user.email})
    h1 new user

    form(method="POST" action="/myusers")

      table

        tr

          td User Email:

          td

            input#email(type="email", name="email")

        tr

          td Username:

          td

            input#userName(type="text", name="userName")

        tr

          td Password:

          td 

            input#password(type="password", name="password")

        tr

          td

            button(type="submit") Create
    h1 #{user.email}

    ul

      li Email:#{user.email}

      li Username:#{user.usernName} 
show.jade文件

在视图/用户文件夹中显示.signup文件

    h1 All Users

    ul

     each user in users

       li: a(href="/myusers/#{user.email}") #{user.userName} (#{user.email})
    h1 new user

    form(method="POST" action="/myusers")

      table

        tr

          td User Email:

          td

            input#email(type="email", name="email")

        tr

          td Username:

          td

            input#userName(type="text", name="userName")

        tr

          td Password:

          td 

            input#password(type="password", name="password")

        tr

          td

            button(type="submit") Create
    h1 #{user.email}

    ul

      li Email:#{user.email}

      li Username:#{user.usernName} 

如果我没记错的话,大约一个月前我正在做这个,但是现在没有时间去测试你的代码,Jade有两种格式可以根据情况插入变量:

1常规方法:

  li Email:#{user.email}

  li Username:#{user.usernName}
2在处理诸如li ahref=/myusers/{user.email}之类的引号时,您必须稍微改变一下:

  li a(href="/myusers/"+user.email)
不带{},但带+且变量必须在引号外

这只是翡翠最时髦的东西之一


顺便说一句,我知道2是有效的,因为这就是我使用的。但是,我不确定您是否可以将li ahref=/myusers/{user.email}与常规的{}一起使用,但在引号之外。

当用户似乎在任何地方都没有定义时,您可以调用alertuser。您可能要提醒req.user。req.user中有任何数据集吗?仍然是相同的issueconnection.query'SELECT*from user_info set=?where email=?',[{req.user,email}],函数err,row我应该这样做吗?我是新手如果没有设置此变量,您必须以某种方式获取用户,然后将其传递到jade模板中。