Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Por que não especificamos o caminho completo e como ele entendeu?

Aqui funcionou perfeitamente, só ficou uma curiosidade. no trecho em que especificamos onde está o arquivo da nossa view, especificamos o caminho produtos/lista.ejs, porém o folder "produtos" está dentro do folder "view", como ele entendeu isso?

O caminho completo para a view da lista de produtos fica assim views/produtos/lista.ejs , mas como ele entendeu quando omitimos o "views" da rota?

3 respostas
solução!

Oi, Stefany, tudo bem?

O plugin do EJS faz um mapeamento do projeto como um todo quando você declara ele. Dessa maneira ele consegue encontrar a pasta mesmo que omitirmos.

Ele também poderia usar o comando PWD para descobrir aonde está, mas o Node tem comandos específicos pra isso no pacote do path que já vem embutido nele

Para você fazer um teste, abre seu terminal linux ou mac e joga o comando PWD. Ele vai te returnar a pasta atual aonde o comando foi executado.

Aqui abaixo, fica um link da documentação do Node para o PATH. Ela vai te explicar como o EJS pode encontrar a pasta mesmo que se omitirmos ela.

Se não entendeu, pode perguntar de novo, espero ter ajudado!

Olá Stefany,

Por padrão, o EJS procura justamente o diretório views/ para procurar os arquivos .ejs.

Quando usamos o comando

res.render("produtos/lista");

ele usa o diretório views/ como raiz relativa para procurar os arquivos.

Obrigado a todos que deixaram respostas! Ficou muito claro! Obg!