处理枚举,其值包含graphql中的空白
我的项目在Nestjs/GraphQl中。我的枚举类型与以下内容类似:
enum UserRoles {
admin = 'admin',
superAdmin = 'super admin'
}
registerEnumType(UserRoles, { name: 'UserRoles' })
在数据库中,用户角色被存储为此枚举的值,即'admin'
和'Super Admin'
。但是,GraphQl从枚举密钥中获取枚举元素,
enum UserRoles {
admin
superAdmin
}
但是已经生成,然后我在'SuperAdmin'
和'Super Admin'
之间遇到冲突。
我尝试重写我的枚举
enum UserRoles {
admin = 'admin',
'super admin' = 'super admin'
}
,但您可以猜到,GraphQl无法解析此枚举,并在构建时丢了错误。
我如何处理这种情况。除了将数据库中的每个文档从“超级admin”更改为
'SuperAdmin'
之外,还有什么可能的解决方案。
My project is in nestjs/graphql. I have a similar enum type to the following:
enum UserRoles {
admin = 'admin',
superAdmin = 'super admin'
}
registerEnumType(UserRoles, { name: 'UserRoles' })
In the database, user roles are stored as the values of this enum i.e. 'admin'
and 'super admin'
. However graphql takes enum elements from enum keys and has generated
enum UserRoles {
admin
superAdmin
}
However, then I'm getting conflicts between 'superAdmin'
and 'super admin'
.
I tried rewriting my enum as
enum UserRoles {
admin = 'admin',
'super admin' = 'super admin'
}
But then, as you can guess, graphql could not parse this and throwed an error while building.
How can I handle this kind of situations. What are the possible solutions except changing every document in the database from 'super admin'
to 'superAdmin'
.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论