本文整理汇总了Golang中github.com/jxufeliujj/blog/models.Tag.Name方法的典型用法代码示例。如果您正苦于以下问题:Golang Tag.Name方法的具体用法?Golang Tag.Name怎么用?Golang Tag.Name使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/jxufeliujj/blog/models.Tag
的用法示例。
在下文中一共展示了Tag.Name方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: Category
//分类查看
func (this *MainController) Category() {
var list []*models.Post
tagpost := new(models.TagPost)
tag := new(models.Tag)
tag.Name = this.Ctx.Input.Param(":name")
if tag.Read("Name") != nil {
this.Abort("404")
}
query := tagpost.Query().Filter("tagid", tag.Id).Filter("poststatus", 0)
count, _ := query.Count()
if count > 0 {
var tp []*models.TagPost
var pids []int64 = make([]int64, 0)
query.OrderBy("-posttime").Limit(this.pagesize, (this.page-1)*this.pagesize).All(&tp)
for _, v := range tp {
pids = append(pids, v.Postid)
}
new(models.Post).Query().Filter("id__in", pids).All(&list)
}
this.Data["tag"] = tag
this.Data["list"] = list
this.Data["pagebar"] = models.NewPager(int64(this.page), int64(count), int64(this.pagesize), "/category/"+tag.Name+"/page/%d").ToString()
this.setHeadMetas(tag.Name, tag.Name, tag.Name)
this.display("life")
}
示例2: batch
//批量操作
func (this *TagController) batch() {
ids := this.GetStrings("ids[]")
op := this.GetString("op")
idarr := make([]int64, 0)
for _, v := range ids {
if id, _ := strconv.Atoi(v); id > 0 {
idarr = append(idarr, int64(id))
}
}
switch op {
case "upcount": //更新统计
for _, id := range idarr {
obj := models.Tag{Id: id}
if obj.Read() == nil {
obj.UpCount()
}
}
case "merge": //合并到
toname := strings.TrimSpace(this.GetString("toname"))
if toname != "" && len(idarr) > 0 {
tag := new(models.Tag)
tag.Name = toname
if tag.Read("name") != nil {
tag.Count = 0
tag.Insert()
}
for _, id := range idarr {
obj := models.Tag{Id: id}
if obj.Read() == nil {
obj.MergeTo(tag)
obj.Delete()
}
}
tag.UpCount()
}
case "delete": //批量删除
for _, id := range idarr {
obj := models.Tag{Id: id}
if obj.Read() == nil {
obj.Delete()
}
}
}
this.Redirect("/admin/tag", 302)
}