Translate Chinese comments, log/error messages, validator labels and Swagger annotations to English throughout the source code, generated Swagger docs, config files and CI workflows. Make the English README primary: README.md now holds the English docs and README_EN.md holds the Chinese version, with cross-language links updated accordingly. Note: the generated docs/ swagger files were translated in place; run `go generate ./...` (swag init) to regenerate them from the now-English annotations when a Go toolchain is available. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
36 lines
1.2 KiB
Go
36 lines
1.2 KiB
Go
package model
|
|
|
|
type User struct {
|
|
IdModel
|
|
Username string `json:"username" gorm:"default:'';not null;uniqueIndex"`
|
|
Email string `json:"email" gorm:"default:'';not null;index"`
|
|
// Email string `json:"email" `
|
|
Password string `json:"-" gorm:"default:'';not null;"`
|
|
Nickname string `json:"nickname" gorm:"default:'';not null;"`
|
|
Avatar string `json:"avatar" gorm:"default:'';not null;"`
|
|
GroupId uint `json:"group_id" gorm:"default:0;not null;index"`
|
|
IsAdmin *bool `json:"is_admin" gorm:"default:0;not null;"`
|
|
Status StatusCode `json:"status" gorm:"default:1;not null;"`
|
|
Remark string `json:"remark" gorm:"default:'';not null;"`
|
|
TimeModel
|
|
}
|
|
|
|
// BeforeSave hook ensures the email field has a sensible default value
|
|
//func (u *User) BeforeSave(tx *gorm.DB) (err error) {
|
|
// // If email is empty, set it to a default value
|
|
// if u.Email == "" {
|
|
// u.Email = fmt.Sprintf("%s@example.com", u.Username)
|
|
// }
|
|
// return nil
|
|
//}
|
|
|
|
type UserList struct {
|
|
Users []*User `json:"list,omitempty"`
|
|
Pagination
|
|
}
|
|
|
|
var UserRouteNames = []string{
|
|
"MyTagList", "MyAddressBookList", "MyInfo", "MyAddressBookCollection", "MyPeer", "MyShareRecordList", "MyLoginLog",
|
|
}
|
|
var AdminRouteNames = []string{"*"}
|