我的專案中有 3 個模型模式:
供應商:id name
專案:id name vendorId
類別:id name ItemId
我需要創建一個 prisma 查詢模式,它允許我檢索類別,包括專案和供應商的詳細資訊。
棱鏡型號:
model Vendor {
id Int @id @default(autoincrement())
name String @db.VarChar(255)
Item Item[]
@@map("Vendors")
}
model Item {
id Int @id @default(autoincrement())
name String @db.VarChar(255)
vendor Vendor @relation(fields: [vendorId], references: [id])
vendorId Int
Category Category[]
@@map("Items")
}
model Category {
id Int @id @default(autoincrement())
name String @db.VarChar(255)
item Item @relation(fields: [itemId], references: [id])
itemId Int
@@map("Categories")
}
express端點如下:
router.get('', async (req, res) => {
try {
let items = await prisma.Category.findMany({
include: {
item: true
},
});
res.status(200).json(items)
} catch (error) {
res.json(error.message);
}
});
現在的代碼,它將回傳一個類別串列以及每個類別的專案,但是,該專案將包括 vendorId 而不是供應商詳細資訊。我應該在代碼中添加什么以在沒有 foreach 回圈的情況下獲取供應商詳細資訊
uj5u.com熱心網友回復:
您可以在通過此查詢獲取類別vendors的同時獲得相關資訊。items
let items = await prisma.category.findMany({
include: {
item: {
include: {
vendor: true,
},
},
},
});
console.log(items);
這是查詢的示例回應:
[
{
"id": 1,
"name": "mobile",
"itemId": 1,
"item": {
"id": 1,
"name": "Iphone",
"vendorId": 1,
"vendor": {
"id": 1,
"name": "Apple Inc"
}
}
}
]
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/440649.html
標籤:javascript 节点.js 打字稿 表示 棱镜
