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)
}如果我的ORM值还没有确定,我使用的是Prisma Category和MongoDB。
发布于 2019-01-03 18:33:21
我不确定我是否正确理解了你的问题。你能更详细地说一下你正在尝试做什么吗?
你是在尝试做任意深度嵌套的自我关系吗?然后你可以这样做:
type Category {
id: ID! @id
name: String!
subCategory: Category @relation(name:"SubToParent"link: INLINE)
parentCategory: Category @relation(name: "SubToParent")
}创建三个级别将适用于此查询:
mutation createCategory {
createCategory(
data: {
name: "firstLevel"
subCategory: {
create: {
name: "secondLevel"
subCategory: { create: { name: "thirdLevel" } }
}
}
}
) {
name
}
}而对类别的查询会给出这样的响应:
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"
}
}
]
}
}如果不能更详细地解释你的问题,我希望这会有所帮助。
https://stackoverflow.com/questions/54019995
复制相似问题