32 lines
520 B
Go
32 lines
520 B
Go
package database
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"github.com/google/uuid"
|
|
"github.com/jackc/pgx/v5/pgtype"
|
|
)
|
|
|
|
func ToDBUUID(id uuid.UUID) (pgtype.UUID, error) {
|
|
var dbID pgtype.UUID
|
|
err := dbID.Scan(id.String())
|
|
if err != nil {
|
|
return pgtype.UUID{}, err
|
|
}
|
|
|
|
return dbID, nil
|
|
}
|
|
|
|
func MustToDBUUID(id uuid.UUID) pgtype.UUID {
|
|
dbID, err := ToDBUUID(id)
|
|
if err != nil {
|
|
panic(fmt.Sprint("id is not valid: ", id))
|
|
}
|
|
|
|
return dbID
|
|
}
|
|
|
|
func MustToUUID(id pgtype.UUID) uuid.UUID {
|
|
return uuid.Must(uuid.FromBytes(id.Bytes[:]))
|
|
}
|