本文整理汇总了Golang中github.com/Unknwon/gowalker/modules/middleware.Context.Query方法的典型用法代码示例。如果您正苦于以下问题:Golang Context.Query方法的具体用法?Golang Context.Query怎么用?Golang Context.Query使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/Unknwon/gowalker/modules/middleware.Context
的用法示例。
在下文中一共展示了Context.Query方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: Search
func Search(ctx *middleware.Context) {
q := ctx.Query("q")
if ctx.Query("auto_redirect") == "true" &&
(base.IsGoRepoPath(q) || base.IsGAERepoPath(q) ||
base.IsValidRemotePath(q)) {
ctx.Redirect("/" + q)
return
}
var (
results []*models.PkgInfo
err error
)
switch q {
case "gorepos":
results, err = models.GetGoRepos()
case "gosubrepos":
results, err = models.GetGoSubepos()
case "gaesdk":
results, err = models.GetGAERepos()
default:
results, err = models.SearchPkgInfo(100, q)
}
if err != nil {
ctx.Flash.Error(err.Error(), true)
} else {
ctx.Data["Results"] = results
}
ctx.Data["Keyword"] = q
ctx.HTML(200, SEARCH)
}
示例2: SearchJSON
func SearchJSON(ctx *middleware.Context) {
q := ctx.Query("q")
// Clean up keyword.
q = strings.TrimFunc(q, func(c rune) bool {
return unicode.IsSpace(c) || c == '"'
})
fmt.Println(q)
pinfos, err := models.SearchPkgInfo(7, q)
if err != nil {
log.ErrorD(4, "SearchPkgInfo '%s': %v", q, err)
return
}
results := make([]*searchResult, len(pinfos))
for i := range pinfos {
results[i] = &searchResult{
Title: pinfos[i].ImportPath,
Description: pinfos[i].Synopsis,
}
}
ctx.JSON(200, map[string]interface{}{
"results": results,
})
}
示例3: Search
func Search(ctx *middleware.Context) {
q := ctx.Query("q")
if ctx.Query("auto_redirect") == "true" &&
(base.IsGoRepoPath(q) || base.IsValidRemotePath(q)) {
ctx.Redirect("/" + q)
return
}
results, err := models.SearchPkgInfo(100, q)
if err != nil {
ctx.Flash.Error(err.Error(), true)
} else {
ctx.Data["Results"] = results
}
ctx.Data["Keyword"] = q
ctx.HTML(200, SEARCH)
}