本文整理匯總了Golang中github.com/go-martini/martini.Router.Redirect方法的典型用法代碼示例。如果您正苦於以下問題:Golang Router.Redirect方法的具體用法?Golang Router.Redirect怎麽用?Golang Router.Redirect使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/go-martini/martini.Router
的用法示例。
在下文中一共展示了Router.Redirect方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: EnsureAuth
func EnsureAuth(r martini.Router, mainDb *d.MainDb) martini.Router {
r.Get("/", func(r render.Render, prms martini.Params, req *http.Request) {
flashMessage, fType := flash.GetMessage()
query := req.URL.Query()
result := map[string]interface{}{
fmt.Sprintf("flash_%v", fType): flashMessage,
"from": query.Get("from"),
}
r.HTML(200, "login", AddCurrentUser(result, req, mainDb), render.HTMLOptions{Layout: "base"})
})
r.Post("/", binding.Bind(user{}), func(postedUser user, r render.Render, req *http.Request, w http.ResponseWriter) {
userData, err := mainDb.Users.LoginUser(postedUser.LoginName, postedUser.Password)
if err != nil {
log.Printf("AUTH user %+v not found: %v", postedUser, err)
flash.SetMessage("К сожалению, пользователь с такими данными не найден.", "error")
r.Redirect(AUTH_URL)
return
} else {
log.Printf("AUTH found user data: %v, %v, %v", userData.UserId, userData.UserName, userData.Auth)
}
user := NewUser(userData)
StartAuthSession(user, w)
redirect := req.URL.Query().Get(REDIRECT_PARAM)
if redirect == "" {
redirect = DefaultUrlMap.GetDefaultUrl(user.BelongsToCompany())
}
http.Redirect(w, req, redirect, 302)
})
return r
}
示例2: EnsureWorkWithUsers
func EnsureWorkWithUsers(r martini.Router, db *d.MainDb) martini.Router {
r.Group("/users", func(r martini.Router) {
r.Get("", w.LoginRequired, w.AutHandler.CheckIncludeAnyRole(MANAGER), func(r render.Render, req *http.Request) {
r.HTML(200, "users", w.AddCurrentUser(GetUsersInfo("", db), req, db), render.HTMLOptions{Layout: "base"})
})
r.Post("/add", w.LoginRequired, w.AutHandler.CheckIncludeAnyRole(MANAGER), func(r render.Render, request *http.Request) {
u_id := strings.TrimSpace(request.FormValue("user-id"))
u_name := strings.TrimSpace(request.FormValue("user-name"))
u_phone := request.FormValue("user-phone")
u_email := request.FormValue("user-e-mail")
u_role := strings.TrimSpace(request.FormValue("user-role"))
u_pwd := request.FormValue("user-pwd")
u_read_rights := strings.Fields(request.FormValue("read-rights"))
u_write_rights := strings.Fields(request.FormValue("write-rights"))
u_belongs_to := strings.TrimSpace(request.FormValue("belongs-to"))
log.Printf("CONSOLE WEB add user [%s] '%s' +%s %s |%v| {%s}", u_id, u_name, u_phone, u_email, u_role, u_pwd)
if u_name != "" && u_id != "" {
db.Users.AddOrUpdateUserObject(d.UserData{
UserId: u_id,
UserName: u_name,
Email: u_email,
Phone: u_phone,
Role: u_role,
Password: u.PHash(u_pwd),
LastUpdate: time.Now(),
ReadRights: u_read_rights,
WriteRights: u_write_rights,
BelongsTo: u_belongs_to,
})
r.Redirect("/users")
} else {
r.HTML(200,
"users",
w.AddCurrentUser(GetUsersInfo("Невалидные значения имени и (или) идентификатора добавляемого пользователя", db), request, db),
render.HTMLOptions{Layout: "base"})
}
})
r.Post("/delete/:id", w.LoginRequired, w.AutHandler.CheckIncludeAnyRole(MANAGER), func(params martini.Params, render render.Render) {
uid := params["id"]
err := db.Users.UsersCollection.Remove(bson.M{"user_id": uid})
log.Printf("CONSOLE WEB will delete user %v (%v)", uid, err)
render.Redirect("/users")
})
r.Post("/update/:id", w.LoginRequired, w.AutHandler.CheckIncludeAnyRole(MANAGER), func(params martini.Params, render render.Render, request *http.Request) {
u_id := params["id"]
u_name := strings.TrimSpace(request.FormValue("user-name"))
u_phone := request.FormValue("user-phone")
u_email := request.FormValue("user-e-mail")
u_role := request.FormValue("user-role")
u_pwd := request.FormValue("user-pwd")
u_read_rights := strings.Fields(request.FormValue("read-rights"))
u_write_rights := strings.Fields(request.FormValue("write-rights"))
u_belongs_to := strings.TrimSpace(request.FormValue("belongs-to"))
upd := bson.M{}
if u_name != "" {
upd["user_name"] = u_name
}
if u_email != "" {
upd["email"] = u_email
}
if u_phone != "" {
upd["phone"] = u_phone
}
if u_role != "" {
upd["role"] = u_role
}
if u_pwd != "" {
upd["password"] = u.PHash(u_pwd)
}
if len(u_read_rights) > 0 {
upd["read_rights"] = u_read_rights
}
if len(u_write_rights) > 0 {
upd["write_rights"] = u_write_rights
}
if u_belongs_to != "" {
upd["belongs_to"] = u_belongs_to
}
db.Users.UsersCollection.Update(bson.M{"user_id": u_id}, bson.M{"$set": upd})
log.Printf("CONSOLE WEB update user [%s] '%s' +%s %s |%v| {%v}", u_id, u_name, u_phone, u_email, u_role, u_pwd)
render.Redirect("/users")
})
})
return r
}