Mongoose populated
Dokumentation:Mongoose bevölkert funktioniert nicht
Model.findOne().populate('author').exec(function (err, doc) {
console.log(doc.author.name) // Dr.Seuss
console.log(doc.populated('author')) // '5144cf8050f071d979c118a7'
})
Mein Code:
Job.find({operator: user.operator, status: {$nin: ['assigned', 'unassigned', 'completed']}})
.populate('version', 'results.routes')
.exec(function(err, jobs)
{
console.log(jobs.populated('version'))
...
Ich habe immer diese Fehlermeldung, wenn der Code ausgeführt wird: TypeError: jobs.populated is not a function
Warum bekomme ich dieser Fehler? Was mache ich hier falsch? Danke im Voraus.
EDIT: Anzeige Job Modell:
var JobSchema = new Schema(
{
created: Date,
received: Date,
due_date: Date,
freight: Number,
creator: { type: mongoose.Schema.ObjectId, ref: 'User' },
operator: { type: mongoose.Schema.ObjectId, ref: 'Operator' },
routing: { type: mongoose.Schema.ObjectId, ref: 'Routing' },
version: {
type: mongoose.Schema.ObjectId, ref: 'Version',
validate: [validateStarredVersion, 'You must star this route before monitoring it.']
},
...
Die Version Modell:
var VersionSchema = mongoose.Schema(
{
routing: { type: mongoose.Schema.ObjectId, ref: 'Routing' },
name: String,
number: Number,
date: Date,
tags: [String],
results:
{
routes:
[ resultSchema ],
...
resultsSchema:
var resultSchema = new Schema(
{
name: String,
vehicle: mongoose.Schema.Types.Mixed,
distance: Number,
weight: Number,
volume: Number,
capacity_weight: Number,
capacity_volume: Number,
occupancy_weight: Number,
occupancy_volume: Number,
job: { type: mongoose.Schema.ObjectId, ref: 'Job' },
operator: mongoose.Schema.Types.Mixed,
delivery_order:
[
{
delivery: mongoose.Schema.Types.Mixed,
depot: mongoose.Schema.Types.Mixed,
arrival_time: Date
}
],
directions: [ directionSchema ]
});
Ich habe nicht mit dem entired Objekt bearbeitet, weil es zu groß ist. Ich habe nur die zugehörigen Informationen angegeben.
Zeigen Sie uns Ihr _Job_ Modell. – TGrif
@TGrif Frage aktualisiert. –