1.创建项目
创建gqlgen-todos目录
切换到gqlgen-todos目录
执行以下命令:
go mod init github.com/[username]/gqlgen-todos
go get github.com/99designs/gqlgen
2.搭建服务器
创建项目骨架,执行以下命令:
go run github.com/99designs/gqlgen init
命令执行完后,项目骨架结构如下:
├── go.mod
├── go.sum
├── gqlgen.yml
├── graph
│ ├── generated
│ │ └── generated.go
│ ├── model
│ │ └── models_gen.go
│ ├── resolver.go
│ ├── schema.graphqls
│ └── schema.resolvers.go
└── server.go
3.修改graph/resolver.go文件
默认==>
type Resolver struct{}
修改为==>
type Resolver struct{
todos []*model.Todo
}
4.修改graph/schema.resolvers.go
func (r *mutationResolver) CreateTodo(ctx context.Context, input model.NewTodo) (*model.Todo, error) {
todo := &model.Todo{
Text: input.Text,
I