Справедливое предупреждение Я довольно новичок в узле и, возможно, не задаю правильные вопросы
Я пытаюсь создать блог на своем веб-сайте и хотел бы показать маршрут для моих сообщенийсодержать длинный текст заголовка сообщения вместо длинного идентификатора.Примером является example.com/blog-title-here вместо example.com/17489349823789423832.Я установил slugify, но не могу заставить его работать.У меня возникают проблемы с хранением заголовка как слагов, и любые указания будут крайне приветствоваться.
//SHOW BLOG ROUTE
app.get("/blogs/:slug", function(req, res){
var slug = slugify(req.body.blog.title);
Blog.find({ slug: req.params.slug}, function (err, foundBlog) {
if(err){
res.redirect("/blogs");
} else {
res.render("show", {blog: foundBlog});
}
})
});
вот страница индекса блога с кнопкой просмотра сообщения, имеющей ссылку, которую я тоже не считаю правильным.
<div class="blog-feed">
<div class="container">
<div class="row">
<% blogs.forEach(function(blog){ %>
<div class="col-lg-4 mb-4">
<div class="card">
<img class="card-img-top" src="<%= blog.image %>" alt="Card image cap">
<div class="card-body text-center">
<h5 class="card-title"><%= blog.title %></h5>
<p class="card-text"><%- blog.body %></p>
<a href="/blogs/<%= blog.slug %>" class="btn btn-primary">View Post</a>
</div>
</div>
</div>
<% }) %>
</div>
</div>
</div>
Вот как я сохраняю сообщение в базе данных
//CREATE BLOG ROUTE
app.post("/blogs", function(req, res){
//create blog
console.log(req.body);
req.body.blog.body = req.sanitize(req.body.blog.body)
console.log("===========");
console.log(req.body);
console.log(slugify(req.body.blog.title));
Blog.create(req.body.blog, function(err, newBlog){
if(err){
res.render("blogNew");
} else {
//then, redirect to the index
res.redirect("/blogs");
}
})
});
Заранее благодарю за помощь!