本文整理匯總了Golang中github.com/blackmady/NoneCMS/app/models.Admin.GetByName方法的典型用法代碼示例。如果您正苦於以下問題:Golang Admin.GetByName方法的具體用法?Golang Admin.GetByName怎麽用?Golang Admin.GetByName使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/blackmady/NoneCMS/app/models.Admin
的用法示例。
在下文中一共展示了Admin.GetByName方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: Login
//登陸
func (c *User) Login(admin *models.Admin) revel.Result {
if c.Request.Method == "GET" {
title := "登陸--GoCMS管理係統"
CaptchaId := captcha.NewLen(6)
return c.Render(title, CaptchaId)
} else {
var username string = c.Params.Get("username")
var password string = c.Params.Get("password")
var captchaId string = c.Params.Get("captchaId")
var verify string = c.Params.Get("verify")
data := make(map[string]string)
if LANG, ok := c.Session["Lang"]; ok {
//設置語言
c.Request.Locale = LANG
} else {
//設置默認語言
c.Request.Locale = "zh"
}
if !captcha.VerifyString(captchaId, verify) {
data["status"] = "0"
data["url"] = "/"
data["message"] = c.Message("verification_code")
return c.RenderJson(data)
}
if len(username) <= 0 {
data["status"] = "0"
data["url"] = "/"
data["message"] = c.Message("login_user_name")
return c.RenderJson(data)
}
if len(password) <= 0 {
data["status"] = "0"
data["url"] = "/"
data["message"] = c.Message("login_password")
return c.RenderJson(data)
}
if len(verify) <= 0 {
data["status"] = "0"
data["url"] = "/"
data["message"] = c.Message("login_verification_code")
return c.RenderJson(data)
}
admin_info := admin.GetByName(username)
if admin_info.Id <= 0 {
data["status"] = "0"
data["url"] = "/"
data["message"] = c.Message("admin_username_error")
} else if admin_info.Status == 0 && admin_info.Id != 1 {
data["status"] = "0"
data["url"] = "/"
data["message"] = c.Message("admin_forbid_login")
} else if admin_info.Role.Status == 0 && admin_info.Id != 1 {
data["status"] = "0"
data["url"] = "/"
data["message"] = c.Message("admin_forbid_role_login")
} else if username == admin_info.Username && utils.Md5(password) == admin_info.Password {
/*
* %% 印出百分比符號,不轉換。
* %c 整數轉成對應的 ASCII 字元。
* %d 整數轉成十進位。
* %f 倍精確度數字轉成浮點數。
* %o 整數轉成八進位。
* %s 整數轉成字符串。
* %x 整數轉成小寫十六進位。
* %X 整數轉成大寫十六進位
*/
c.Session["UserID"] = fmt.Sprintf("%d", admin_info.Id)
c.Session["Lang"] = admin_info.Lang
c.Flash.Success(c.Message("login_success"))
c.Flash.Out["url"] = "/"
//更新登陸時間
if ip := c.Request.Header.Get("X-Forwarded-For"); ip != "" {
ips := strings.Split(ip, ",")
if len(ips) > 0 && ips[0] != "" {
rip := strings.Split(ips[0], ":")
admin.Lastloginip = rip[0]
}
} else {
ip := strings.Split(c.Request.RemoteAddr, ":")
if len(ip) > 0 {
if ip[0] != "[" {
admin.Lastloginip = ip[0]
}
}
//.........這裏部分代碼省略.........