本文整理汇总了Golang中specialTady/models.User.Read方法的典型用法代码示例。如果您正苦于以下问题:Golang User.Read方法的具体用法?Golang User.Read怎么用?Golang User.Read使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类specialTady/models.User
的用法示例。
在下文中一共展示了User.Read方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: Profile
//资料修改
func (this *AccountController) Profile() {
user := models.User{Id: this.userid}
if err := user.Read(); err != nil {
this.showmsg(err.Error())
}
if this.isPost() {
errmsg := make(map[string]string)
password := strings.TrimSpace(this.GetString("password"))
newpassword := strings.TrimSpace(this.GetString("newpassword"))
newpassword2 := strings.TrimSpace(this.GetString("newpassword2"))
updated := false
if newpassword != "" {
if password == "" || util.Md5([]byte(password)) != user.Password {
errmsg["password"] = "当前密码错误"
} else if len(newpassword) < 6 {
errmsg["newpassword"] = "密码长度不能少于6个字符"
} else if newpassword != newpassword2 {
errmsg["newpassword2"] = "两次输入的密码不一致"
}
if len(errmsg) == 0 {
user.Password = util.Md5([]byte(newpassword))
user.Update("password")
updated = true
}
}
this.Data["updated"] = updated
this.Data["errmsg"] = errmsg
}
this.Data["user"] = user
this.display()
}
示例2: Login
//登录
func (this *AccountController) Login() {
if this.userid > 0 {
this.Redirect("/admin", 302)
}
if this.GetString("dosubmit") == "yes" {
account := strings.TrimSpace(this.GetString("account"))
password := strings.TrimSpace(this.GetString("password"))
remember := this.GetString("remember")
if account != "" && password != "" {
var user models.User
user.Name = account
if user.Read("name") != nil || user.Password != util.Md5([]byte(password)) {
this.Data["errmsg"] = "帐号或密码错误"
} else if user.Active == 0 {
this.Data["errmsg"] = "该帐号未激活"
} else {
user.LoginCount += 1
user.LastIp = this.getClientIp()
user.LastLogin = this.getTime()
user.Update()
authkey := util.Md5([]byte(this.getClientIp() + "|" + user.Password))
if remember == "yes" {
this.Ctx.SetCookie("auth", strconv.FormatInt(user.Id, 10)+"|"+authkey, 7*86400)
} else {
this.Ctx.SetCookie("auth", strconv.FormatInt(user.Id, 10)+"|"+authkey)
}
this.Redirect("/admin", 302)
}
}
}
this.TplNames = this.moduleName + "/account/login.html"
}
示例3: Login
func (this *UserController) Login() {
var (
OutJson OutStruct
)
account := strings.TrimSpace(this.GetString("u"))
password := strings.TrimSpace(this.GetString("p"))
fmt.Println("account: " + account + " password: " + password)
if account != "" && password != "" {
var user models.User
user.Name = account
if user.Read("name") != nil || user.Password != util.Md5([]byte(password)) {
OutJson.ErrorCode = 1000
OutJson.ErrorMsg = "帐号或密码错误"
} else if user.Active == 0 {
OutJson.ErrorCode = 1000
OutJson.ErrorMsg = "该帐号未激活"
} else {
user.LoginCount += 1
user.Update()
OutJson.Content = &user
}
} else {
OutJson.ErrorCode = 1001
OutJson.ErrorMsg = "账号或者密码不能为空"
}
this.Data["json"] = &OutJson
this.ServeJson()
}
示例4: Delete
//删除用户
func (this *UserController) Delete() {
id, _ := this.GetInt64("id")
if id == 1 {
this.showmsg("不能删除ID为1的用户")
}
user := models.User{Id: id}
if user.Read() == nil {
user.Delete()
}
this.Redirect("/admin/user/list", 302)
}
示例5: Edit
//编辑用户
func (this *UserController) Edit() {
id, _ := this.GetInt64("id")
user := models.User{Id: id}
if err := user.Read(); err != nil {
this.showmsg("用户不存在")
}
errmsg := make(map[string]string)
if this.Ctx.Request.Method == "POST" {
password := strings.TrimSpace(this.GetString("password"))
password2 := strings.TrimSpace(this.GetString("password2"))
email := strings.TrimSpace(this.GetString("email"))
active, _ := this.GetInt("active")
valid := validation.Validation{}
if password != "" {
if v := valid.Required(password2, "password2"); !v.Ok {
errmsg["password2"] = "请再次输入密码"
} else if password != password2 {
errmsg["password2"] = "两次输入的密码不一致"
} else {
user.Password = util.Md5([]byte(password))
}
}
if v := valid.Required(email, "email"); !v.Ok {
errmsg["email"] = "请输入email地址"
} else if v := valid.Email(email, "email"); !v.Ok {
errmsg["email"] = "Email无效"
} else {
user.Email = email
}
if active > 0 {
user.Active = 1
} else {
user.Active = 0
}
if len(errmsg) == 0 {
user.Update()
this.Redirect("/admin/user/list", 302)
}
}
this.Data["errmsg"] = errmsg
this.Data["user"] = user
this.display()
}
示例6: auth
//登录状态验证
func (this *baseController) auth() {
arr := strings.Split(this.Ctx.GetCookie("auth"), "|")
if len(arr) == 2 {
idstr, password := arr[0], arr[1]
userid, _ := strconv.ParseInt(idstr, 10, 64)
if userid > 0 {
var user models.User
user.Id = userid
if user.Read() == nil && password == util.Md5([]byte(this.getClientIp()+"|"+user.Password)) {
this.userid = user.Id
this.username = user.Name
}
}
}
if this.userid == 0 && (this.controllerName != "account" ||
(this.controllerName == "account" && this.actionName != "logout" && this.actionName != "login")) {
this.Redirect("/admin/login", 302)
}
}