gqlgenの Getting Started でカスタムモデルが作れない問題を解決
3783 ワード
対象者
gqlgenの Getting Started を試してる人。
Getting StartedのDon’t eagerly fetch the userが上手くいかない人
どんな問題が起きたか
チュートリアルに書いてある通り、graph/model/todo.goを作成し、コードをコピペする。
go run github.com/99designs/gqlgen generate
を実行するが、以下のエラーが出る。
validation failed: packages.Load: [省略]/graph/model/todo.go:3:6: Todo redeclared in this block
[省略]/graph/model/models_gen.go:10:6: other declaration of Todo
期待値
graph/schema.resolvers.go
に以下のメソッドが自動生成されること。
func (r *todoResolver) User(ctx context.Context, obj *model.Todo) (*model.User, error) {
//
}
解決方法
gqlgen.yml
のautobind:
以下のパッケージ名のコメントアウトを解除する。
# gqlgen will search for any type names in the schema in these go packages
# if they match it will use them, otherwise it will generate them.
autobind:
- "github.com/[module_name]/graph/model" # ⇦コメントアウトされてるので解除したげる!
go run github.com/99designs/gqlgen
のコマンドを実行
graph/schema.resolvers.go
を見ると。。。
func (r *todoResolver) User(ctx context.Context, obj *model.Todo) (*model.User, error) {
panic(fmt.Errorf("not implemented"))
}
できてる〜!
以上。
Author And Source
この問題について(gqlgenの Getting Started でカスタムモデルが作れない問題を解決), 我々は、より多くの情報をここで見つけました https://zenn.dev/kake99/articles/782bc637485166著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Collection and Share based on the CC protocol