first issue
This commit is contained in:
12
queries/queries.go
Normal file
12
queries/queries.go
Normal file
@ -0,0 +1,12 @@
|
||||
package queries
|
||||
|
||||
import (
|
||||
"github.com/graphql-go/graphql"
|
||||
)
|
||||
|
||||
// GetRootFields returns all the available queries.
|
||||
func GetRootFields() graphql.Fields {
|
||||
return graphql.Fields{
|
||||
"user": GetUserQuery(),
|
||||
}
|
||||
}
|
5
queries/requests.go
Normal file
5
queries/requests.go
Normal file
@ -0,0 +1,5 @@
|
||||
package queries
|
||||
|
||||
const (
|
||||
GET_USERS = `SELECT * FROM users`
|
||||
)
|
37
queries/user.go
Normal file
37
queries/user.go
Normal file
@ -0,0 +1,37 @@
|
||||
package queries
|
||||
|
||||
import (
|
||||
"cadoles/graphql/postgres"
|
||||
"cadoles/graphql/types"
|
||||
"log"
|
||||
|
||||
"github.com/graphql-go/graphql"
|
||||
)
|
||||
|
||||
// GetUserQuery returns the queries available against user type.
|
||||
func GetUserQuery() *graphql.Field {
|
||||
log.Print("GetUserQuery")
|
||||
return &graphql.Field{
|
||||
Type: graphql.NewList(types.UserType),
|
||||
Resolve: func(params graphql.ResolveParams) (interface{}, error) {
|
||||
var user types.User
|
||||
users := []types.User{}
|
||||
|
||||
sqlStatement := GET_USERS
|
||||
rows, err := postgres.DB.Query(sqlStatement)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
defer rows.Close()
|
||||
for rows.Next() {
|
||||
|
||||
err := rows.Scan(&user.ID, &user.Firstname, &user.Lastname)
|
||||
users = append(users, user)
|
||||
if err != nil {
|
||||
log.Fatalln(err)
|
||||
}
|
||||
}
|
||||
return users, nil
|
||||
},
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user