在哪里
class FindRecord < GraphQL::Function
...
argument :id, !types.ID
...
end
GraphQL::ObjectType.define
块中字段定义的这种变体可以正常工作:
field 'd1', DirectoryType, function: FindRecord.new(:directory)
但是对于相同的查询,这将失败并显示错误消息“字段'd2'不接受参数'id'”:
field 'd2', DirectoryType do
function FindRecord.new(:directory)
end
在定义了这些字段之后,两者d1
的d2
值target.fields['d?'].function
相同(具有不同的对象 ID)。但看起来在块版本中,该功能并未应用于该领域。
field
当我跳过帮助程序并像这样定义字段时,它也不起作用:
target.fields[name] = GraphQL::Field.define {
...
function FindRecord.new(:directory)
...
}
我调用函数方法错误吗?任何建议表示赞赏。