Switching to sql.nulltype
This commit is contained in:
parent
6879221996
commit
45c6cebc2c
@ -3,13 +3,15 @@ package database
|
|||||||
import (
|
import (
|
||||||
"database/sql"
|
"database/sql"
|
||||||
"log"
|
"log"
|
||||||
|
|
||||||
|
"gopkg.in/guregu/null.v4"
|
||||||
)
|
)
|
||||||
|
|
||||||
type OS struct {
|
type OS struct {
|
||||||
ID string `json:"id"`
|
ID int `json:"id"`
|
||||||
Distribution string `json:"distribution"`
|
Distribution null.String `json:"distribution"`
|
||||||
Version string `json:"version"`
|
Version null.String `json:"version"`
|
||||||
End_of_support string `json:"end_of_support"`
|
End_of_support null.String `json:"end_of_support"`
|
||||||
}
|
}
|
||||||
|
|
||||||
func GetOS(db *sql.DB) ([]OS, error) {
|
func GetOS(db *sql.DB) ([]OS, error) {
|
||||||
@ -42,8 +44,8 @@ func GetOSbyID(db *sql.DB, id string) (OS, error) {
|
|||||||
return os, nil
|
return os, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func GetDistributionList(db *sql.DB) ([]string, error) {
|
func GetDistributionList(db *sql.DB) ([]null.String, error) {
|
||||||
var list []string
|
var list []null.String
|
||||||
rows, err := db.Query("SELECT DISTINCT distribution FROM dashboard_os")
|
rows, err := db.Query("SELECT DISTINCT distribution FROM dashboard_os")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Println("Error getting distribution list", err)
|
log.Println("Error getting distribution list", err)
|
||||||
@ -59,8 +61,8 @@ func GetDistributionList(db *sql.DB) ([]string, error) {
|
|||||||
return list, nil
|
return list, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func GetVersionByDistributionList(db *sql.DB, d string) ([]string, error) {
|
func GetVersionByDistributionList(db *sql.DB, d string) ([]null.String, error) {
|
||||||
var list []string
|
var list []null.String
|
||||||
rows, err := db.Query("SELECT DISTINCT version FROM dashboard_os where distribution = ?", d)
|
rows, err := db.Query("SELECT DISTINCT version FROM dashboard_os where distribution = ?", d)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Println("Error getting distribution list", err)
|
log.Println("Error getting distribution list", err)
|
||||||
|
|||||||
@ -10,6 +10,7 @@ import (
|
|||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/gorilla/mux"
|
"github.com/gorilla/mux"
|
||||||
|
"gopkg.in/guregu/null.v4"
|
||||||
)
|
)
|
||||||
|
|
||||||
func RequestHandler(w http.ResponseWriter, r *http.Request) {
|
func RequestHandler(w http.ResponseWriter, r *http.Request) {
|
||||||
@ -63,7 +64,7 @@ func GetOSbyID(w http.ResponseWriter, r *http.Request) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func GetDistributionList(w http.ResponseWriter, r *http.Request) {
|
func GetDistributionList(w http.ResponseWriter, r *http.Request) {
|
||||||
var list []string
|
var list []null.String
|
||||||
var err error
|
var err error
|
||||||
|
|
||||||
t := time.Now()
|
t := time.Now()
|
||||||
@ -82,7 +83,7 @@ func GetDistributionList(w http.ResponseWriter, r *http.Request) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func GetVersionByDistributionList(w http.ResponseWriter, r *http.Request) {
|
func GetVersionByDistributionList(w http.ResponseWriter, r *http.Request) {
|
||||||
var list []string
|
var list []null.String
|
||||||
var err error
|
var err error
|
||||||
|
|
||||||
t := time.Now()
|
t := time.Now()
|
||||||
|
|||||||
1
go.mod
1
go.mod
@ -7,6 +7,7 @@ require (
|
|||||||
github.com/go-sql-driver/mysql v1.8.0
|
github.com/go-sql-driver/mysql v1.8.0
|
||||||
github.com/gorilla/mux v1.8.1
|
github.com/gorilla/mux v1.8.1
|
||||||
github.com/joho/godotenv v1.5.1
|
github.com/joho/godotenv v1.5.1
|
||||||
|
gopkg.in/guregu/null.v4 v4.0.0
|
||||||
)
|
)
|
||||||
|
|
||||||
require (
|
require (
|
||||||
|
|||||||
2
go.sum
2
go.sum
@ -20,5 +20,7 @@ github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXf
|
|||||||
github.com/stretchr/testify v1.7.0 h1:nwc3DEeHmmLAfoZucVR881uASk0Mfjw8xYJ99tb5CcY=
|
github.com/stretchr/testify v1.7.0 h1:nwc3DEeHmmLAfoZucVR881uASk0Mfjw8xYJ99tb5CcY=
|
||||||
github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
|
github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
|
||||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||||
|
gopkg.in/guregu/null.v4 v4.0.0 h1:1Wm3S1WEA2I26Kq+6vcW+w0gcDo44YKYD7YIEJNHDjg=
|
||||||
|
gopkg.in/guregu/null.v4 v4.0.0/go.mod h1:YoQhUrADuG3i9WqesrCmpNRwm1ypAgSHYqoOcTu/JrI=
|
||||||
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c h1:dUUwHk2QECo/6vqA44rthZ8ie2QXMNeKRTHCNY2nXvo=
|
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c h1:dUUwHk2QECo/6vqA44rthZ8ie2QXMNeKRTHCNY2nXvo=
|
||||||
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user