示例#1
0
func updateTodo(params graphql.ResolveParams) (interface{}, error) {
	id, _ := params.Args["id"].(int)
	todo, err := repository.GetTodo(id)
	if err != nil {
		return nil, err
	}
	title, ok := params.Args["title"].(string)
	if ok {
		todo.Title = title
	}
	body, ok := params.Args["body"].(string)
	if ok {
		todo.Body = body
	}
	userId, ok := params.Args["user_id"].(int)
	if ok {
		todo.UserId = userId
	}
	err = todo.Update()
	if err != nil {
		return nil, err
	} else {
		return todo, nil
	}
}
示例#2
0
func getTodo(params graphql.ResolveParams) (interface{}, error) {
	id, _ := params.Args["id"].(int)
	todo, err := repository.GetTodo(id)
	if err != nil {
		return nil, err
	} else {
		return todo, nil
	}
}