让我们说我有两条路线:"汽车"和"人和#34;在我的服务器上。
app.get('/cars', getAll)
app.get('/cars/:id', get)
app.get('/people', getAll)
一切都很好。现在,我必须修改方法" getAll" in" people"模型。在这种方法中,我需要通过ID获取有人拥有的汽车。我无法使用方法"得到"因为在这种方法中我有类似
的东西res.status(200).send(car)
我需要返回汽车,而不是http响应。现在,我回复诺言,所以我的路线如下所示:
app.get('/cars/:id, (req, res) => {
//...
model.get(id).then(car => {
res.status(200).send(car)
})
})
但我不确定这是否是一个好的解决方案。另一种方法是从方法" getAll"中调用API。 in" people"模型,但它更糟糕。从其他模型调用方法的最佳方法是什么?
此致
答案 0 :(得分:0)
如果我理解你的问题,你可以做这样的嵌套路线:
app.get('/people/:id/cars', getPeoplesCars);
所得到的汽车列表将取决于该人。
function getPeoplesCars(req, res, next) {
// e.g. in mongoose if there is such a relation
Cars.find({peopleId: req.params.id}, function (err, cars) {
// etc. you take it from here
});
}
我不确定,这个答案是否解决了你的问题。