.populate () не приносит данные - PullRequest
0 голосов
/ 05 июля 2019

Я пишу программное обеспечение для вивария и пытаюсь сделать это с помощью node.js и mongodb, но я сталкиваюсь с некоторыми проблемами с mongoose.

|| route.js

var animalspecieSchema = new Schema({
 name: {type: String, required: true},
 }, {collection: 'animal-specie'});

var animalspecie = mongoose.model('animalspecie', animalspecieSchema);

var cageSchema= new Schema({
 name: {
 type: String, required: true
},
 animalspecie: {
 type: Schema.Types.ObjectId,
 ref: 'animalspecie'
}
}, {collection: 'cage'});

var cage= mongoose.model('cage', cageSchema);

router.get('/cage', 

function(req,res,next){

cage.find().populate('animalspecie').then((cages) => {
res.render('cage', {cages: cages})
})

|| cage.hbs </p> <pre><code><h2 class="mt-4">Cages</h2> {{#each cages}} <div class="col-md-12 mt-4"> <div class="card"> <div class="card-body"> <b>Jaula:</b> {{name}} <b>Animal specie:</b> {{animalspecie.name}} <a href="/editcage/{{_id}}"><button class="btn btn-warning mt-3">Edit</button></a> <a href="/removecage/{{_id}}"><button class="btn btn-danger mt-3">Remove</button></a> </div> </div> </div> {{/each}}

Я могу получить только идентификаторы клеток, но виды животных не появляются в cage.hbs.Любая идея, как я могу решить это?Спасибо!

...