123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- package model
- type User struct {
- ID uint64 `json:"id"`
- Email string `json:"email"`
- Password string `json:"password"`
- Name string `json:"name"`
- }
- func CreateUser(user *User, db *Db) error {
- statement := "INSERT INTO users (email, password, name) values ($1, $2, $3)"
- _, err := db.conn.Exec(statement, user.Email, user.Password, user.Name)
- return err
- }
- func CheckEmail(email string, user *User, db *Db) bool {
- statement := "SELECT id, name, email, password FROM users WHERE email=$1 LIMIT 1"
- rows, err := db.conn.Query(statement, email)
- if err != nil {
- return false
- }
- for rows.Next() {
- err = rows.Scan(&user.ID, &user.Name, &user.Email, &user.Password)
- if err != nil {
- return false
- }
- }
- return true
- }
- func GetUser(email string, db *Db) (*User, error) {
- statement := "SELECT id, name, email FROM users WHERE email=$1 LIMIT 1"
- var user User
- rows, err := db.conn.Query(statement, email)
- for rows.Next() {
- err = rows.Scan(&user.ID, &user.Name, &user.Email)
- if err != nil {
- return nil, err
- }
- }
- return &user, nil
- }
|