User model updates

also use sql.NullString to set access/refresh token
This commit is contained in:
Michael Bumann
2022-01-08 18:03:06 +01:00
parent 3e758d0e61
commit 2223ef41d9
2 changed files with 10 additions and 8 deletions

View File

@@ -7,12 +7,12 @@ import (
// User : User Model
type User struct {
ID uint `gorm:"primary_key"`
Email sql.NullString
Login string `gorm:"index"`
Password string `gorm:"index"`
RefreshToken sql.NullString `gorm:"index"`
AccessToken sql.NullString `gorm:"index"`
ID uint `gorm:"primary_key"`
Email sql.NullString `gorm:uniqueIndex`
Login string `gorm:"uniqueIndex;not null"`
Password string `gorm:"index;not null"`
RefreshToken sql.NullString `gorm:"uniqueIndex"`
AccessToken sql.NullString `gorm:"uniqueIndex"`
UpdatedAt time.Time `gorm:"autoUpdateTime`
CreatedAt time.Time `gorm:"autoCreateTime"`
}

View File

@@ -1,6 +1,8 @@
package tokens
import (
"database/sql"
"github.com/bumi/lndhub.go/database/models"
"github.com/dgrijalva/jwt-go"
"github.com/labstack/echo/v4"
@@ -26,7 +28,7 @@ func GenerateAccessToken(c echo.Context, u *models.User) error {
if err != nil {
return err
}
u.AccessToken = t
u.AccessToken = sql.NullString{String: t}
return err
}
@@ -41,7 +43,7 @@ func GenerateRefreshToken(c echo.Context, u *models.User) error {
return err
}
u.RefreshToken = rt
u.RefreshToken = sql.NullString{String: rt}
return err
}