user_model.go 764 B

1234567891011121314151617181920212223242526272829303132333435
  1. // Package user 存放用户 Model 相关逻辑
  2. package user
  3. import (
  4. "github.com/runningwater/gohub/app/models"
  5. "github.com/runningwater/gohub/pkg/database"
  6. "github.com/runningwater/gohub/pkg/hash"
  7. )
  8. // User 用户模型
  9. type User struct {
  10. models.BaseModel
  11. Name string `json:"name,omitempty"`
  12. Email string `json:"-"`
  13. Phone string `json:"-"`
  14. Password string `json:"-"`
  15. models.CommonTimestampsField
  16. }
  17. // Create 创建用户, 通过 User.ID 来判断是否创建成功
  18. func (u *User) Create() {
  19. database.DB.Create(&u)
  20. }
  21. func (u *User) GetStringID() string {
  22. return models.GetStringID(u.ID)
  23. }
  24. // ComparePassword 密码是否匹配
  25. func (u *User) ComparePassword(_password string) bool {
  26. return hash.BcryptCheck(_password, u.Password)
  27. }