Mongodb 一对一,猫鼬不工作
我是猫鼬和猫鼬的新手。 我有两个收藏(cart和produk) 1个购物车有1个produk,我得到购物车并填充产品,但不显示数据关系。 代码如下: 路由Mongodb 一对一,猫鼬不工作,mongodb,mongoose,populate,Mongodb,Mongoose,Populate,我是猫鼬和猫鼬的新手。 我有两个收藏(cart和produk) 1个购物车有1个produk,我得到购物车并填充产品,但不显示数据关系。 代码如下: 路由 router.route('/relations/:app_id') .get(cartController.relation); 模型(cartModel) 模型(produkModel) 控制器(cartController) }) //结果 { "status": 1, "message": &
router.route('/relations/:app_id')
.get(cartController.relation);
模型(cartModel)
模型(produkModel)
控制器(cartController)
})
//结果
{
"status": 1,
"message": "Operation success",
"data": [
{
"_id": "60af72022d57d542a41ffa5a",
"app_id": "CvR4dTTjC7qgr7gA2yoUnIJnjRXaYokD6uc2pkrp",
"qty": 1,
"product_id": "60112f3a25e6ba2369424ea3"
},
{
"_id": "60b020536ccea245b410fb38",
"app_id": "CvR4dTTjC7qgr7gA2yoUnIJnjRXaYokD6uc2pkrp",
"product_id": "603f5aff9437e12fe71e6d41",
"qty": 1
}
]
}
预期结果
{
"status": 1,
"message": "Operation success",
"data": [
{
"_id": "60af72022d57d542a41ffa5a",
"app_id": "CvR4dTTjC7qgr7gA2yoUnIJnjRXaYokD6uc2pkrp",
"qty": 1,
"product_id": {
"_id": "60112f3a25e6ba2369424ea3",
"name": "snack"
}
},
{
"_id": "60b020536ccea245b410fb38",
"app_id": "CvR4dTTjC7qgr7gA2yoUnIJnjRXaYokD6uc2pkrp",
"product_id": {
"_id": "603f5aff9437e12fe71e6d41",
"name": "snack"
}
"qty": 1
}
]
}
我想念什么
感谢您的帮助您需要传递要填充的路径或指定参数的对象。因此,在这种情况下,您的代码应该是:
const carto = await Cart.find().select('app_id product_id qty').populate("product_id");
现在它的显示错误模式还没有为模型“Produk”注册。以及.populate('product_id')上的“product_id”,它是架构购物车上的字段product_id???是的。这是
产品id
字段。您可以尝试要求控制器中的Produk模型修复错误
{
"status": 1,
"message": "Operation success",
"data": [
{
"_id": "60af72022d57d542a41ffa5a",
"app_id": "CvR4dTTjC7qgr7gA2yoUnIJnjRXaYokD6uc2pkrp",
"qty": 1,
"product_id": "60112f3a25e6ba2369424ea3"
},
{
"_id": "60b020536ccea245b410fb38",
"app_id": "CvR4dTTjC7qgr7gA2yoUnIJnjRXaYokD6uc2pkrp",
"product_id": "603f5aff9437e12fe71e6d41",
"qty": 1
}
]
}
{
"status": 1,
"message": "Operation success",
"data": [
{
"_id": "60af72022d57d542a41ffa5a",
"app_id": "CvR4dTTjC7qgr7gA2yoUnIJnjRXaYokD6uc2pkrp",
"qty": 1,
"product_id": {
"_id": "60112f3a25e6ba2369424ea3",
"name": "snack"
}
},
{
"_id": "60b020536ccea245b410fb38",
"app_id": "CvR4dTTjC7qgr7gA2yoUnIJnjRXaYokD6uc2pkrp",
"product_id": {
"_id": "603f5aff9437e12fe71e6d41",
"name": "snack"
}
"qty": 1
}
]
}
const carto = await Cart.find().select('app_id product_id qty').populate("product_id");