Если аутентификация пользователя не работает должным образом - PullRequest
0 голосов
/ 20 июня 2020

Я хочу выполнить аутентификацию с помощью метода , если пользователь . Когда я использую console.log (пользователь) и cosole.log (kullanici), я получаю правильные данные.

kullanici означает пользователя, который отображается в профиле.

пользователь означает пользователя, который в данный момент вошел в систему (req.user)

Мое приложение. 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

Но я не мог понять, почему он не работает. Может ли кто-нибудь помочь мне решить эту проблему:

Ответы [ 3 ]

0 голосов
/ 21 июня 2020

Между объявлением тега 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
0 голосов
/ 22 июня 2020

Я решил это, добавив это в свой шаблон мопса ===>

if user
  if user._id == ""+kullanici._id+""
    a.button.btn.btn-light(href='/kullanici/duzenleme/' + kullanici.id, style="margin-right:85%;")Düzenle
0 голосов
/ 21 июня 2020

Вместо использования выражения if по умолчанию в pug, попробуйте использовать JavaScript, чтобы оценить истинность выражения. Итак, вместо if user._id == kullanici._id попробуйте использовать - if(user._id == kullanici._id)

...