adding rest-api
This commit is contained in:
40
rest-api/models/user.go
Normal file
40
rest-api/models/user.go
Normal file
@@ -0,0 +1,40 @@
|
||||
package models
|
||||
|
||||
import (
|
||||
"example.com/rest-api/db"
|
||||
"example.com/rest-api/utils"
|
||||
)
|
||||
|
||||
type User struct {
|
||||
ID int64
|
||||
Email string `binding:"required"`
|
||||
Password string `binding:"required"`
|
||||
}
|
||||
|
||||
func (u User) Save() error {
|
||||
query := "INSERT INTO users(email, password) VALUES (?, ?)"
|
||||
stmt, err := db.DB.Prepare(query)
|
||||
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
defer stmt.Close()
|
||||
|
||||
hashedPassword, err := utils.HashPassword(u.Password)
|
||||
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
result, err := stmt.Exec(u.Email, hashedPassword)
|
||||
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
userId, err := result.LastInsertId()
|
||||
|
||||
u.ID = userId
|
||||
return err
|
||||
}
|
||||
Reference in New Issue
Block a user