Я получаю эту ошибку во время работы Node.js Сервер: CastError: Ошибка преобразования в ObjectId для значения «5f04cc85d5db3f0d582fb51a» на пути «_id» для модели «Blog»
Я пробовал все известные мне методы для этого, но он не работает.
Это код из blogapp. js Следуя маршрутам RESTful, я хочу показать более подробную информацию о сообщении с участием партикуляторов, когда Читать дальше нажимается. Но это не сработало, поэтому я решил распечатать ошибку, и вот что она показывает: Casterror: .....
var express = require('express');
app = express();
bodyParser = require('body-parser');
mongoose = require('mongoose')
// APP CONFIG
mongoose.connect('mongodb://localhost/restful_blog_app', { useNewUrlParser: true, useUnifiedTopology: true});
app.set('view engine', 'ejs');
app.use(express.static('Public'));
app.use(bodyParser.urlencoded({extended:true}))
// MONGOOSE/MODEL CONFIG
var blogSchema = new mongoose.Schema({
title:String,
image:String,
body: String,
created :{type: Date, default: Date.now}
});
var Blog = mongoose.model('Blog', blogSchema)
// RESTFUL ROUTES
app.get('/', (req,res) => {
res.redirect('/blogs')
})
// INDEX ROUTE
app.get('/blogs', (req,res) => {
Blog.find({}, (err, blogs) => {
if(err){
console.log(err);
}else{
res.render('blogindex', {blogs:blogs})
}
})
});
// NEW ROUTE
app.get('/blogs/new', (req,res) => {
res.render('blognew')
});
// CREATE ROUTE
app.post('/blogs', (req,res) => {
// create blog
Blog.create(req.body.blog, (err, newBlog) => {
if(err){
res.render('new');
}else{
// then redirect to the index
res.redirect('/blogs')
}
});
});
// SHOW ROUTE
app.get('/blogs/:id', (req,res) => {
Blog.findById(req.params.id , (err, Blog)=>{
if(err){
res.send(` ${err}`);
}else{
res.render('blogshow', {blog: Blog})
}
});
});
app.listen('5000', ()=>{
console.log("Blog Server running on port 5000");
});
Я не знаю, где я ошибаюсь Это код из blogshow.e js
<%- include ('partials/blogheader') %>
<div class="ui main text container segment">
<div class="ui huge header"> <%= blog.title %> </div>
</div>
<%- include ('partials/blogfooter') %>