Kann Eigenschaft 'title' von null nicht lesen !!! Zeigt, während die findone.ejs Datei rendring .. aber der erste in db zeigt perfekt ..Node && Mongodb findOne funktioniert nicht
app.get('/books/:title', (req, res) => {
db.collection("Book")
.findOne({ 'title': req.params.title }, function(err, result) {
if (err) throw err;
res.render('findone.ejs', { Book: result});
});
})
Datenbank-Schema: var Mungo = require ('Mungo'); var Schema = mongoose.Schema;
var BookSchema = new Schema({
title: String,
author: String,
category: String
});
module.exports = mongoose.model('Book', BookSchema);
Mongo-Datenbank.
{
"_id": {
"$oid": "5a14a5edf6fe123247b890f3"
},
"title": "ttt",
"author": "ttttt",
"category": "tttttttttttt"
}
{
"_id": {
"$oid": "5a14a5f2f6fe123247b890f4"
},
"title": "tttt",
"author": "ttttt",
"category": "ttttttttttttttttttttttttttt"
}
{
"_id": {
"$oid": "5a154e4bff45fe2c9035f9da"
},
"title": "hello ",
"author": "rabbani",
"category": "how are you"
}
Dann bedeutet dies, dass die Abfrage keine Dokumente oder keine Dokumente in der Sammlung mit diesem bestimmten Titel übereinstimmt. Wenn Sie 'req.params.title' vor der Abfrage protokollieren, was bekommen Sie? – chridam
zeigt es den Titel, den ich vergleichen möchte &&, dass ich auf dem Link gebe. Der erste Wert der Datenbank wird ohne Fehler angezeigt. –
Können Sie Ihren Modellcode '' Book 'hinzufügen – akinjide