Roh*_*kla 2 mongodb plumatic-schema graphql prisma prisma-graphql
type Category {
id: ID! @id
name: String!
}
type SubCategoryLevel1 {
id: ID! @id
name: String!
parentCategory: Category! @relation(link: INLINE)
}
type SubCategoryLevel2 {
id: ID! @id
name: String!
parentCategory: SubCategoryLevel1! @relation(link: INLINE)
}
Run Code Online (Sandbox Code Playgroud)
如果我的Category水平没有确定怎么办,我正在使用Prisma ORM和MongoDB.
不确定我是否正确理解了你的问题.你能详细了解一下你想做什么吗?
你是否试图任意深度嵌套的自我关系?然后你可以做这样的事情:
type Category {
id: ID! @id
name: String!
subCategory: Category @relation(name:"SubToParent"link: INLINE)
parentCategory: Category @relation(name: "SubToParent")
}
Run Code Online (Sandbox Code Playgroud)
创建三个级别将适用于此查询:
mutation createCategory {
createCategory(
data: {
name: "firstLevel"
subCategory: {
create: {
name: "secondLevel"
subCategory: { create: { name: "thirdLevel" } }
}
}
}
) {
name
}
}
Run Code Online (Sandbox Code Playgroud)
查询类别会给你这样的回应:
query allCategories {
categories {
name
subCategory {
name
}
parentCategory {
name
}
}
}
{
"data": {
"categories": [
{
"name": "firstLevel",
"subCategory": {
"name": "secondLevel"
},
"parentCategory": null
},
{
"name": "secondLevel",
"subCategory": {
"name": "thirdLevel"
},
"parentCategory": {
"name": "firstLevel"
}
},
{
"name": "thirdLevel",
"subCategory": null,
"parentCategory": {
"name": "secondLevel"
}
}
]
}
}
Run Code Online (Sandbox Code Playgroud)
我希望这有助于,如果不是更详细地解释你的问题.
| 归档时间: |
|
| 查看次数: |
294 次 |
| 最近记录: |