如何使用 GraphQL 查询 KeystoneJS select 字段的选项
How do I use GraphQL to query the options for a KeystoneJS select field
我已经根据 docs:
在 KeystoneJS 中设置了一个 select
字段
const { Select } = require('@keystonejs/fields');
keystone.createList('Order', {
fields: {
status: { type: Select, options: 'pending, processed' },
},
});
如何使用 introspection 获取该字段的有效选项列表?
KeystoneJS 中的类型似乎使用以下格式命名:
<list name><field name>Type
此外,如果 <list name>
或 <field name>
的首字母是小写,则这些字母将更改为大写。因此,对于问题中给出的示例,字段 status
的类型名称将是:
OrderStatusType
然后可以使用以下方式查询可用选项:
query {
__type (name: "OrderStatusType") {
enumValues {
name
}
}
}
在带有 Postgres 数据库的标准 KeystoneJS 安装上进行了测试。
我已经根据 docs:
在 KeystoneJS 中设置了一个select
字段
const { Select } = require('@keystonejs/fields');
keystone.createList('Order', {
fields: {
status: { type: Select, options: 'pending, processed' },
},
});
如何使用 introspection 获取该字段的有效选项列表?
KeystoneJS 中的类型似乎使用以下格式命名:
<list name><field name>Type
此外,如果 <list name>
或 <field name>
的首字母是小写,则这些字母将更改为大写。因此,对于问题中给出的示例,字段 status
的类型名称将是:
OrderStatusType
然后可以使用以下方式查询可用选项:
query {
__type (name: "OrderStatusType") {
enumValues {
name
}
}
}
在带有 Postgres 数据库的标准 KeystoneJS 安装上进行了测试。