【问题标题】:Using value from database as a link - using ejs in node js使用数据库中的值作为链接 - 在节点 js 中使用 ejs
【发布时间】:2018-07-08 21:00:37
【问题描述】:

我想从数据库中获取一个值并将该值分配给锚标记的“href”属性。我正在使用节点 js、mongodb、ejs。 我试过了:

 <a href="<%=link%>"><%=link%></a>

   res.render("form.ejs",{link:item.shortUrl});

'item.shortUrl' 包含从数据库中获取的链接。 当我运行它时,它说 - “'链接'未定义”。我怎样才能使它工作?请帮助.. 谢谢!

【问题讨论】:

  • 你确定 item.shortUrl 是一个有效的链接吗?所以你的数据库查询没问题?
  • 尝试从您的 res.render("form.ejs",{link:item.shortUrl}); 语句中删除 .ejs

标签: node.js mongodb ejs


【解决方案1】:

检查以下事项并相应地更正您的代码。

设置您的默认视图目录和视图引擎:(如果尚未完成)

app.set('views', './views');
app.set('view engine', 'ejs');

从您的 res.render.. 声明中删除 .ejs

res.render("form",{link:item.shortUrl});

始终有一个条件语句来检查您尝试输出的变量是否存在:

<% if (link) { %>
    <a href="<%=link%>"><%=link%></a>
<% } %>

希望这会有所帮助!

【讨论】:

  • 嗨,我尝试了上述更改,但仍然遇到同样的错误。谢谢。
  • 您可以尝试硬编码您的link 变量,例如res.render('form',{link:'http://www.google.com'});,看看它是否有效?
  • 对不起。那也不起作用。同样的错误。谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-08-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-10-12
  • 1970-01-01
  • 2016-06-13
相关资源
最近更新 更多