I am doing a site as of my studies.
The technology being free, I decided to code with nodejs/Express.
For my first route /home
, everything went well. But I canβt create others.
Yet I thought I understood the system well. It would bother me if it was due to a silly error because I have been on this problem for too long π.
index.js
:
const express = require('express');
const app = express();
app.set('view engine', 'ejs');
β
const PORT = process.env.PORT || 4242;
β
app.use('/', require('./routes/home_route'));
app.use('/auther', require('./routes/auther_route')); //the problem π‘
app.listen(PORT, () => {
console.log(`localhost:${PORT}`);
});
β
app.use('/styles', express.static(__dirname + '/styles'));
app.use('/scripts', express.static(__dirname + '/scripts'));
app.use('/pictures', express.static(__dirname + '/pictures'));
β
home_route.js
:
const express = require('express');
const { homeView } = require('../controllers/home_controller');
const router = express.Router();
router.get('/home', homeView);
router.get('/', (req, res) => res.redirect('./home'));
module.exports = router;
β
home_controller.js
:
let page = 'home_view.ejs';
β
const homeView = (req, res) => {
res.render("constant_view.ejs", { page : page });
}
module.exports = { homeView };
β
constant_view.ejs
:
html
<%= page %>
html
β
And all this is very good. And now this is what does not work π.
auther_route.js
:
const express = require('express');
const { autherView } = require('../controllers/auther_controller');
const router = express.Router();
router.get('/auther', autherView);
module.exports = router;
β
auther_controller.js
:
let page = 'auter_view.ejs';
β
const autherView = (req, res) => {
res.render("constant_view", { page : page });
}
module.exports = { autherView };
β
Thank you in advance for your time and your answers.
Advertisement
Answer
you are trying to reach the route /auther
in index.js, but inside auther_route
you create a route with /auther
as well. So in index.js you should add /auther/auther
or just change to app.use('/', require('./routes/auther_route'))
;
Regards