/ / Mongoose geben immer ein leeres Array zurück? [duplizieren] - node.js, mongodb, mongoose-schema

Mungos geben immer leere Arrays zurück? [duplizieren] - node.js, mongodb, mongoose-schema

Ich bin neu bei nodejs.Ich habe bereits eine Datenbank namens AQI mit dem Sammlungsnamen PLN. Ich versuche, alle Datensätze in der Sammlung auf der Webseite anzuzeigen, aber Mungo gibt immer ein leeres Array zurück. Ich habe es mit anderen DBS getestet, aber ich kann Daten von ihnen erhalten, aber für pln Mungo immer leere Array zurück. Ich würde mich sehr freuen, wenn mir jemand helfen könnte. Das ist mein Schema

var Pln = new Schema({
latit      : Number,
longit     : Number,
timestmp   : String,
co         : Number,
smoke      : Number,
O3         : Number,
humidity   : Number,
temperature: Number,
co2        : Number,
dust       : String
});
var plnModel = mongoose.model("pln", Pln);

Das ist meine Route.

app.get("/", function(req, res) {
res.contentType("application/json");
plnModel.find({}, function(err, pln) {
if (pln != null) {
console.log("Found the User:" + pln.latit);
res.send(JSON.stringify(pln));
}
});
});

Antworten:

1 für die Antwort № 1

Wenn Sie Ihr Modell so definieren: mongoose.model("pln", Pln), dann deine Sammlung Muss benannt werden "plns" (= Ihr Modellname + s)

Wenn dies nicht der Fall ist, müssen Sie Mongoose mitteilen, dass Sie einen benutzerdefinierten Sammlungsnamen haben (in Ihrem Fall aus Ihren Kommentaren, "pln" ohne ein s) unter Verwendung von:

mongoose.model("pln", Pln, "pln")Das dritte Argument ist der tatsächliche Name Ihrer Sammlung.

Und schauen Sie sich diesen Code an:

app.get("/", function(req, res) {
plnModel.find({}, function(err, pln) {
if(err) return res.status(500).json(err);
console.log("Found Users :", pln);
res.status(200).json(pln);
});
});