我正在尝试使graphql-ruby在我的rails应用程序上运行。到目前为止,我或多或少地设置了所有内容,但是当我在浏览器中转到/graphiql 页面时,我无法访问我的自定义 UserType(不过,预定义的测试用例以前有效。我在开发人员工具的网络选项卡中收到此错误消息:NoMethodError in GraphqlController#execute# 的未定义方法"用户类型"GraphQL::D efine::TypeDefiner:0x007fa3728b2348
你可以帮我吗?
我的架构定义如下:(leaves_messenger_schema.rb)
LeavesMessengerSchema = GraphQL::Schema.define do
mutation(Types::MutationType)
query(Types::QueryType)
end
我的用户类型定义如下:(类型/user_type.rb)
Types::QueryType = GraphQL::ObjectType.define do
name "Query"
field :viewer, types.UserType do
resolve ->(obj, args, ctx) {
ctx[User.last]
}
end
end
和我的用户类型(类型/user_type.rb):
Types::UserType = GraphQL::ObjectType.define do
name 'User'
description 'A user'
field :id, types.String
field :email, types.String
end
My routes.rb 是按生成器定义的。这应该是正确的,因为我可以导航到 graphiql 页面并且测试用例有效。
非常感谢您能给我的任何建议!
我认为你打错了字,尝试从这里更改你的代码
field :viewer, types.UserType do
到field :viewer, Types::UserType do