1
我有2個不同的集合定義的2級架構,我需要填充其中的一個到另一個:填充來自兩個集合
stationmodel.js
var stationSchema = new Schema({
StationName: 'string',
_id: 'number',
Tripcount: [{ type: Schema.Types.ObjectId, ref: 'Tripcount'}]
},
{collection: 'stations'}
);
module.exports = mongoose.model('Station', stationSchema);
tripmodel.js
var tripSchema = new Schema({
_id: { type: Number, ref: 'Station'},
Tripcount: 'number'
},
{collection: 'trips'}
);
module.exports = mongoose.model('Tripcount', tripSchema);
根據貓鼬填充documentation,這是要走的路。當我使用Postman獲取電臺時,我遇到了「Tripcount」仍然爲[]
的問題。
我的數據庫結構的 '站' 集合:
{
"_id": 1,
"StationName": "Station A",
}
而對於 '旅行' 收藏:
{
"_id": 1,
"Tripcount": 6
}
我routes.js:
module.exports = function(app) {
app.get('/stations', function(req,res) {
var query = Station.find().populate('Tripcount');
query.exec(function(err, stations){
if(err)
res.send(err);
res.json(stations);
});
});
};
我可以似乎沒有發現錯誤,也許有人在這裏可以發現我犯的一個錯誤。
謝謝。我根據你的建議改變了一切,然而郵差仍然顯示'Tripcount:[]'的一切。我把我改變的routes.js放在我的問題中。 – ffritz
我認爲這涉及到「貓鼬填充空陣列」問題的人也有。 – ffritz
我已經添加了一個替代方案,您可以嘗試,前提是「工作臺」收集與'_id'鍵的'trips'收集有關。 – chridam