GraphQL:InputObject 上的参数具有无效值 ([\"a\"])。预期类型“[Bars!]!”。如何将枚举传递给 Ruby 中的 GraphQL 查询?
GraphQL: Argument on InputObject has an invalid value ([\"a\"]). Expected type '[Bars!]!'. How to pass enum to GraphQL query in Ruby?
我的代码中有这个:
# spec
let(:query) do
graphql_query_for(:foos,
{
foo_bars: [:a],
},
和
module Types
module Arguments
class FoosInput < Types::BaseInputObject
argument :foo_bars, [Types::Enums::BarsType], required: true
和
module Types
module Enums
class BarsType < Types::Enums::BaseEnum
description 'List of different types of bars'
convert_enum Foo.bars
end
end
end
和
class Foo < ApplicationRecord
enum bar: {
a: 'a',
b: 'b',
c: 'c',
d: 'd',
}
end
如何让规范通过,如何正确地将枚举作为参数发送给 GraphQL 查询?
我试过 foo_bars: [Foo.bars['a']]
,但出现了类似的错误。
我想 foo_bars
获取枚举数组 Foo.bars
。
想通了,将枚举键作为全部大写符号传递,所以在这种情况下 :A
。
我的代码中有这个:
# spec
let(:query) do
graphql_query_for(:foos,
{
foo_bars: [:a],
},
和
module Types
module Arguments
class FoosInput < Types::BaseInputObject
argument :foo_bars, [Types::Enums::BarsType], required: true
和
module Types
module Enums
class BarsType < Types::Enums::BaseEnum
description 'List of different types of bars'
convert_enum Foo.bars
end
end
end
和
class Foo < ApplicationRecord
enum bar: {
a: 'a',
b: 'b',
c: 'c',
d: 'd',
}
end
如何让规范通过,如何正确地将枚举作为参数发送给 GraphQL 查询?
我试过 foo_bars: [Foo.bars['a']]
,但出现了类似的错误。
我想 foo_bars
获取枚举数组 Foo.bars
。
想通了,将枚举键作为全部大写符号传递,所以在这种情况下 :A
。