Мне понадобится некоторая помощь, так как после этой стадии я теряюсь, я пытаюсь выполнить маршрутизацию с параметрами, но после этого я теряюсь, как загрузить страницу на этот URL localhost: 3000 / dist / 16783 после того, как при маршрутизации страницы появляется сообщение404 Не Найдено.Мне нужна помощь, как я могу перейти на новую страницу после этого с идентификатором "16783" со значениями внутри таблицы, например: отслеживание не "16783" или представление загрузки на той же странице.
router.get('/dist/:awb', function (req, res, next) {
res.render('dist', {
AWB_NO: req.params.awb
})
});
Этоне отображая страницу "dist", этот вопрос может относиться к этому маршрутизации с параметрами в нефрите с одной страницы на другую
EDIT: структура:
views:
index.ejs
track.ejs
dist.ejs
routes:
index.js
track.js
dist.js
app.js
package.json
app.js:
var indexRouter = require('./routes/index');
var trackRouter = require('./routes/track');
var distRouter = require('./routes/dist');
app.use('/', indexRouter);
app.use('/track', trackRouter);
app.use('/dist',distRouter);
track.ejs
столбец таблицы AWB НЕТ ссылки на страницу dist
a.name(href="/dist/" + AWB_NO) #{AWB_NO}
div
td.min(data-label="Name") #{Product_Name}
td.min(data-label="file") #{PCS}
td.min(data-label="s_name") #{Weight}
td.min(data-label="r_name") #{Gross_Weight}
td.min(data-label="Date") #{DOP}
td.min(data-label="Date") #{DOE}
Так что здесь актуальная проблема, например, когда у меня есть значениевнутри этого столбца "AWBNO", который ссылается на страницу "dist".Теперь, когда я нажимаю на его передаваемые параметры в url dist / 16783, но ничего не загружается
маршруты:
track.js
router.get('/', function(req, res, next) {
res.send('respond with a resource');
dist.js
var express = require('express');
var router = express.Router();
router.get('/', function (req, res, next) {
res.render('dist.ejs');
});
router.get('/:awb', function (req, res, next) {
res.render('dist.ejs', {
AWB_NO: req.params.awb
})
});
Новое обновление:
index.ejs
<tr>
<td class="id"><a href="/dist">1687952</a></td>
<td>Tuna Fish</td>
<td>DHL</td>
<td>Germany</td>
</tr>
index.js
router.get('/', function (req, res, next) {
connection.query('SELECT * FROM orders', function (err, rows) {
if (err) {
req.flash('error', err);
res.render('index', { page_title: "index - Node.js", data: '' });
} else {
res.render('index', { page_title: "index - Node.js", data: rows });
}
});
});
dist.ejs
<li class="list-inline-item">AWB Nummber:<%= AWB_NO %></li>
dist.js
router.get('/', function (req, res, next) {
connection.query('SELECT * FROM deliveries', function (err, rows) {
if (err) {
req.flash('error', err);
res.render('dist', { page_title: "dist - Node.js", data: '' });
} else {
res.render('dist', { page_title: "dist - Node.js", data: rows });
}
});
router.get('/dist/:awb', function (req, res) {
res.render('dist', {
AWB_NO: req.params.awb
})
});
});
Ошибка:
ReferenceError: E:\Dev\admeghbalim\YinSeafood\YinSeafood\expressfirst\views\dist.ejs:20
18| <h3>Distributor information</h3><br>
19| <ul class="list-inline">
>> 20| <li class="list-inline-item">AWB Nummber:<%= AWB_NO %></li>
21| <li class="list-inline-item">Country:</li>
22| <li class="list-inline-item">Date:</li>
23| <li class="list-inline-item">Sender:</li>
AWB_NO is not defined