Yaakov
10/21/2021, 11:53 AM- id
- name
services
- id
- name
areas
- id
- name
vendors_services_areas
- vendor_id
- service_id
- area_id
@@id([vendor_id, service_id, area_id])
How can this be defined in Prisma Schema and how do I add a new vendor mapped to its two relationships?Ryan
10/21/2021, 12:27 PMmodel Vendor {
id Int @id @default(autoincrement())
name String
vsa VSA[]
}
model Service {
id Int @id @default(autoincrement())
name String
vsa VSA[]
}
model Area {
id Int @id @default(autoincrement())
name String
vsa VSA[]
}
model VSA {
vendor Vendor @relation(fields: [vendorId], references: [id])
vendorId Int
service Service @relation(fields: [serviceId], references: [id])
serviceId Int
area Area @relation(fields: [areaId], references: [id])
areaId Int
@@id([vendorId, serviceId, areaId])
}
Inserting a vendor and mapping will be the same using connect
or create
for the explicit relation.Yaakov
10/21/2021, 12:48 PMfindMany
that will return the data in the following format?
"vendors": [
{
"name": "Vendor 1",
"services": [
{
"name": "Service 1",
"areas": [
{
"name": "Area 1"
},
{
"name": "Area 2"
}
]
},
{
"name": "Service 2",
"areas": [
{
"name": "Area 1"
},
{
"name": "Area 2"
}
]
}
]
}
]
Ryan
10/21/2021, 1:07 PMYaakov
10/22/2021, 6:49 PMimplicit many-to-many
. Is this impossible to achieve using an explicit many-to-many
, if I don't connect a 3rd relationship?Ryan
10/25/2021, 4:51 AMYaakov
10/25/2021, 4:25 PMRyan
10/26/2021, 4:56 AMYaakov
10/26/2021, 3:49 PM