Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

86
Visualizações
¿Debo poner mi condición en la plantilla o presentar una plantilla diferente?

Estoy aprendiendo node js y usando el motor pug-template para crear una página simple de inicio de sesión/administración para reservas de hotel.

Cuando un usuario inicia sesión, la página de índice debe ser diferente de un usuario que no ha iniciado sesión.

¿Debo hacer una condición en mi plantilla o una condición en mi ruta de inicio para generar un index_logged o index_not_logged?

Actualmente haciendo

 app.get('/', (req, res) => { User.find({}, function(err, users) { if(err) { console.log(err); } else { res.render("index", { title: "Willkommen", users: users }); } }); });

y en mi index.pug

 extends layout block content if user h1 #{title} ul.list-group each user, i in users li.list-group-item a(href="/users/"+user._id)= user.name else .jumbotron h1 #{title} a(href="/users/login").btn.btn-primary Anmelden

Estoy usando una variable de usuario global en este momento.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Si su / público es muy diferente del / registrado en la sesión, entonces represente dos vistas pug separadas, por ejemplo:

 app.get('/', (req, res) => { User.find({}, function(err, users) { if (err) { console.log(err); res.render("public_index"); } else { res.render("index", { title: "Willkommen", users: users }); } }); });

Pero si las dos páginas son muy similares con algunas partes diferentes, entonces represente la misma vista pero use if user (teóricamente puede tener esto en tantos lugares como desee en el archivo de vista) para mostrar el contenido relevante en consecuencia, como lo que tienes en index.pug en tu pregunta. La lógica de tu aplicación debe ser:

 app.get('/', (req, res) => { User.find({}, function(err, users) { let Users = undefined; if (err) { console.log(err); } else { Users = users } res.render("index", { title: "Wilkommen", users: Users }); }); });
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda