框架基本搭建完成
This commit is contained in:
32
pkg/model/user.go
Normal file
32
pkg/model/user.go
Normal file
@@ -0,0 +1,32 @@
|
||||
package model
|
||||
|
||||
import (
|
||||
"drive-linked/pkg/dao"
|
||||
)
|
||||
|
||||
type User struct {
|
||||
Id int64 `json:"id,string"`
|
||||
Name string `json:"name"`
|
||||
Nickname string `json:"nickname"`
|
||||
Email string `json:"email"`
|
||||
Password string `json:"-"`
|
||||
Status int32 `json:"status"`
|
||||
Avatar string `json:"avatar"`
|
||||
Roles string `json:"roles"`
|
||||
}
|
||||
|
||||
func (user *User) GetByName(name string) (err error) {
|
||||
err = dao.DB.Get(user, "SELECT * FROM users WHERE name=?", name)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (user *User) GetByEmail(email string) (err error) {
|
||||
err = dao.DB.Get(user, "SELECT * FROM users WHERE email=?", email)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
30
pkg/model/user_test.go
Normal file
30
pkg/model/user_test.go
Normal file
@@ -0,0 +1,30 @@
|
||||
package model
|
||||
|
||||
import (
|
||||
"database/sql"
|
||||
"drive-linked/pkg/dao"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func init() {
|
||||
err := dao.Conn()
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
func TestUser_GetUser(t *testing.T) {
|
||||
var user User
|
||||
// 存在的用户
|
||||
err := user.GetByName("eigeen")
|
||||
if err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
t.Log(user)
|
||||
|
||||
// 不存在的用户
|
||||
err = user.GetByName("unknown_user")
|
||||
if err != sql.ErrNoRows {
|
||||
t.Error(err)
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user