Просто создайте переменную, которая является строкой, и установите ее равной «news -» + {{ID}}, которую вы получаете от вызова своего db
Я построил свой сайт с node.js, и я хочу показать записи в блогах на главной странице. Я уже создал раздел блога на главной странице. Он показывает последние новости из базы данных MySQL. Когда пользователи нажимают на картинку на индексном сайте, она перенаправляет пользователей на контент-сайт.
Предположим, что последний идентификатор новостей - 16. В приведенном ниже коде он перенаправляет пользователей на сайт № 16. Как я могу изменить номер 16 на нечто более общее? (передать <% = news_data [0] .news_id%> значение для функции showNews)
main.js
app.get('/', querydataIndex)
app.get('/news-16', showNews)
function querydataIndex(req,res){
var sql_news = 'select * from news order by news_id desc limit 3'
var sql_training = 'select * from trainingcourse order by course_id desc limit 3'
server.query(sql_news+';'+sql_training,[1,2],function(error,data){
res.render('pages/index',{news_data: data[0],training_data: data[1]})
})
}
function showNews(req,res){
var sql = 'select * from news where news_id='+'16'+' order by news_id desc'
data=[]
server.query(sql,data,function(error,data){
res.render('pages/news-content',{data: data})
})
}
index.ejs
<div class="col-md-4 ">
<div class="card">
<a href="news-<%=news_data[0].news_id%>"><img class="card-img-top" src="img/news/<%=news_data[0].news_id%>.jpg"></a>
<div class="card-body contentIndex">
<h5 class="card-title"><%=news_data[0].topic%></h5>
</div>
</div>
</div>
Новости-content.ejs
<h2 class="card-title"><%=data[0].topic%></h2>
<h5 class="card-text"><%=data[0].content%></h5>