Autor
|
Tema: Error en handlebars, nodejs, express, y los niveles de directorios (Leído 2,993 veces)
|
Ali Baba
|
Bien, llevo días pasándola muy mal. Estoy creando una web con ExpressJS para NodeJS y pues me presento el siguiente problema: const path = require('path') const exphbs = require('express-handlebars') const morgan = require('morgan'); const multer = require('multer'); const express = require('express'); const erroHandler = require('errorhandler') const routes = require('../routes/index'); module.exports = app => { app.set('port', process.env.PORT || 80) console.log(__dirname) app.set('views', path.join(__dirname, '../views')); app.engine('.hbs', exphbs({ extName: '.hbs', defaultLayout: 'main', partialsDir: path.join(app.get('views'), 'partials' ), layoutDir: path.join(app.get('views'), 'layouts'), helpers: require('../helpers') })) app.set('view engine', '.hbs'); // middlewares app.use(morgan('dev')); app.use(multer({dest: path.join(__dirname, '../public/upload/temp')}).single('image')) app.use(express.urlencoded({extended: false})); app.use(express.json()); //routes routes(app) // static files app.use('/public', express.static(path.join(__dirname, '../public'))); // errorhandlers if ('development' === app.get('env')) { app.use(erroHandler) } return app; }
y me da este error: Error: ENOENT: no such file or directory, open 'C:\Users\Diesan Romero\Desktop\redsocial\views\layouts\main.handlebars' yo pensé que si subía un nivel, podría entonces encontrar la carpeta pero resulta que no: Error: Failed to lookup view "index" in views directory "C:\Users\Diesan Romero\Desktop\redsocial\src\server\views" Aquí les dejo una imagen para que se guíen bien, por el directorio y ojalá me puedan ayudar
|
|
|
En línea
|
|
|
|
EdePC
|
Si:
app.set('views', path.join(__dirname, '../views'));
devuelve:
C:\Users\Diesan Romero\Desktop\redsocial\src\server\views
Entonces:
app.set('views', path.join(__dirname, '../../views'));
debería devolver:
C:\Users\Diesan Romero\Desktop\redsocial\src\views
- Pero depende de lo que devuelva __dirname, por cierto que devuelve?
|
|
|
En línea
|
|
|
|
Ali Baba
|
Si:
app.set('views', path.join(__dirname, '../views'));
devuelve:
C:\Users\Diesan Romero\Desktop\redsocial\src\server\views
Entonces:
app.set('views', path.join(__dirname, '../../views'));
debería devolver:
C:\Users\Diesan Romero\Desktop\redsocial\src\views
- Pero depende de lo que devuelva __dirname, por cierto que devuelve?
devuelve C:\Users\Diesan Romero\Desktop\redsocial\src\server cuando subo un nivel de directorio me da este error Error: ENOENT: no such file or directory, open 'C:\Users\Diesan Romero\Desktop\redsocial\views\layouts\main.handlebars' lógicamente hay algo que no está bien
|
|
« Última modificación: 27 Enero 2019, 18:37 pm por magodiesan »
|
En línea
|
|
|
|
EFEX
Desconectado
Mensajes: 1.171
"Dinero Facil"
|
Yo no veo un archivo llamado main.handlebars dentro de la carpeta layouts. El error es de que no se encontro el archivo.
|
|
|
En línea
|
|
|
|
Ali Baba
|
Yo no veo un archivo llamado main.handlebars dentro de la carpeta layouts. El error es de que no se encontro el archivo.
no, fíjate bien en la ruta completa
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Error con el Nero Vision Express 3
Multimedia
|
gande876
|
2
|
1,843
|
31 Julio 2005, 21:43 pm
por Cobac
|
|
|
Error en windows vista accediendo a Directorios
.NET (C#, VB.NET, ASP)
|
odeONeSs
|
0
|
2,206
|
21 Noviembre 2008, 10:46 am
por odeONeSs
|
|
|
sql server 2005 express error 40 y 2
Bases de Datos
|
mamau
|
0
|
2,307
|
1 Abril 2017, 05:46 am
por mamau
|
|
|
Error de mongoose en nodejs
Bases de Datos
|
Ali Baba
|
2
|
3,198
|
22 Noviembre 2017, 19:05 pm
por Ali Baba
|
|
|
nodejs | obtener lista de archivos y directorios
Desarrollo Web
|
patilanz
|
1
|
4,641
|
9 Diciembre 2017, 21:22 pm
por patilanz
|
|