我想使用 if user 方法进行身份验证。当我执行console.log(用户)和cosole.log(kullanici)时,我得到了正确的数据。
kullanici 是指个人资料中显示的用户。
用户是指当前登录的用户(req.user)
我的app.js文件:
app.get('/kullanici/:id', function(req, res){
Kullanici.findById(req.user
).exec(function(err, user){
Kullanici.findById(req.params.id, function(err, kullanici){
res.render("kullanici",{
kullanici:kullanici,
user:user,
});
});
});
});
我的kullanici.pug文件:
if user
if user._id == kullanici._id
a.button.btn.btn-light(href='/kullanici/duzenleme/' + kullanici.id, style="margin-right:85%;")Düzenle
但是我不明白为什么它不起作用。有人可以帮我解决这个问题吗?
答案 0 :(得分:0)
请尝试使用JavaScript评估表达式的真实性,而不是使用pug中的默认if
表达式。因此,请尝试使用if user._id == kullanici._id
- if(user._id == kullanici._id)
答案 1 :(得分:0)
Pug标签声明及其内容之间必须有一个空格。
a(href='#')Content //incorrect
a(href='#') Content //correct
在这种情况下,您需要在右括号后(在Düzenle之前)添加一个空格,如下所示:
if user
if user._id == kullanici._id
a.button.btn.btn-light(href='/kullanici/duzenleme/' + kullanici.id, style="margin-right:85%;") Düzenle
答案 2 :(得分:0)
我通过将其添加到我的哈巴狗模板中解决了该问题===>
if user
if user._id == ""+kullanici._id+""
a.button.btn.btn-light(href='/kullanici/duzenleme/' + kullanici.id, style="margin-right:85%;")Düzenle