本文整理汇总了Golang中github.com/gobuild/middleware.Context.Query方法的典型用法代码示例。如果您正苦于以下问题:Golang Context.Query方法的具体用法?Golang Context.Query怎么用?Golang Context.Query使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/gobuild/middleware.Context
的用法示例。
在下文中一共展示了Context.Query方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: PkgList
func PkgList(ctx *middleware.Context) {
rs, err := models.GetAllLastRepoByOsArch(ctx.Query("os"), ctx.Query("arch"))
if err != nil {
ctx.JSON(400, nil)
return
}
var result []*PackageItem
var lastRid int64 = 0
for _, lr := range rs {
if lr.Rid == lastRid {
if pos := len(result) - 1; pos >= 0 {
r := result[pos]
r.Branches = append(r.Branches,
Branch{lr.TagBranch, lr.PushURI, fmtTime(lr.Updated), lr.Os, lr.Arch, lr.ZipBallUrl})
}
continue
}
lastRid = lr.Rid
repo, err := models.GetRepositoryById(lr.Rid)
if err != nil {
log.Errorf("a missing repo in last_repo_update: %v", lr)
continue
}
br := Branch{lr.TagBranch, lr.PushURI, fmtTime(lr.Updated), lr.Os, lr.Arch, lr.ZipBallUrl}
result = append(result, &PackageItem{
Name: repo.Uri, // "github.com/nsf/gocode",
Description: repo.Brief, // "golang code complete",
Branches: []Branch{br},
})
}
ctx.JSON(200, result)
}
示例2: Download
func Download(ctx *middleware.Context) {
rid, _ := strconv.Atoi(ctx.Request.FormValue("rid"))
os := ctx.Request.FormValue("os")
arch := ctx.Request.FormValue("arch")
task, err := models.GetOneDownloadableTask(int64(rid), os, arch)
if err != nil {
log.Errorf("get download task: %v", err)
http.Error(ctx.ResponseWriter, err.Error(), http.StatusNotFound)
return
}
models.RefreshPageView("/d/" + ctx.Query("rid"))
ctx.Redirect(302, task.ZipBallUrl)
}
示例3: History
func History(ctx *middleware.Context, params martini.Params, req *http.Request) {
id, _ := strconv.Atoi(req.FormValue("id"))
tid := int64(id)
task, err := models.GetTaskById(tid)
if err != nil {
log.Errorf("get task by id error: %v", err)
}
history, err := models.GetAllBuildHistoryByTid(tid)
if err != nil {
log.Errorf("get task history error: %v", err)
}
ctx.Data = map[string]interface{}{
"Task": task,
"History": history,
"AutoRefresh": ctx.Query("auto_refresh") == "true",
}
ctx.HTML(200, "history")
}