本文整理汇总了Golang中github.com/beego/wetalk/modules/models.Category类的典型用法代码示例。如果您正苦于以下问题:Golang Category类的具体用法?Golang Category怎么用?Golang Category使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Category类的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: NewPost
func (this *PostRouter) NewPost() {
this.TplNames = "post/new.html"
if this.CheckActiveRedirect() {
return
}
form := post.PostForm{Locale: this.Locale}
topicSlug := this.GetString("topic")
if len(topicSlug) > 0 {
topic := models.Topic{Slug: topicSlug}
err := topic.Read("Slug")
if err == nil {
form.Topic = topic.Id
form.Category = topic.Category.Id
post.ListTopicsOfCategory(&form.Topics, &models.Category{Id: form.Category})
this.Data["Topic"] = &topic
} else {
this.Redirect(setting.AppUrl, 302)
}
} else {
catSlug := this.GetString("category")
if len(catSlug) > 0 {
category := models.Category{Slug: catSlug}
category.Read("Slug")
form.Category = category.Id
post.ListTopicsOfCategory(&form.Topics, &category)
this.Data["Category"] = &category
} else {
this.Redirect(setting.AppUrl, 302)
}
}
this.SetFormSets(&form)
}
开发者ID:netxfly,项目名称:wetalk,代码行数:35,代码来源:post.go
示例2: Category
// Get implemented Get method for HomeRouter.
func (this *PostListRouter) Category() {
this.TplName = "post/category.html"
slug := this.GetString(":slug")
cat := models.Category{Slug: slug}
if err := cat.Read("Slug"); err != nil {
this.Abort("404")
return
}
pers := 25
qs := models.Posts().Filter("Category", &cat)
qs = this.postsFilter(qs)
cnt, _ := models.CountObjects(qs)
pager := this.SetPaginator(pers, cnt)
qs = qs.OrderBy("-Created").Limit(pers, pager.Offset()).RelatedSel()
var posts []models.Post
models.ListObjects(qs, &posts)
this.Data["Posts"] = posts
this.Data["Category"] = &cat
this.Data["CategorySlug"] = cat.Slug
this.Data["IsCategory"] = true
var cats []models.Category
this.setCategories(&cats)
var topics []models.Topic
this.setTopicsOfCat(&topics, &cat)
}
开发者ID:wildex,项目名称:wetalk,代码行数:35,代码来源:post.go
示例3: Valid
func (form *PostAdminForm) Valid(v *validation.Validation) {
user := models.User{Id: form.User}
if user.Read() != nil {
v.SetError("User", "admin.not_found_by_id")
}
user.Id = form.LastReply
if user.Read() != nil {
v.SetError("LastReply", "admin.not_found_by_id")
}
user.Id = form.LastAuthor
if user.Read() != nil {
v.SetError("LastReply", "admin.not_found_by_id")
}
topic := models.Topic{Id: form.Topic}
if topic.Read() != nil {
v.SetError("Topic", "admin.not_found_by_id")
}
cat := models.Category{Id: form.Category}
if cat.Read() != nil {
v.SetError("Category", "admin.not_found_by_id")
}
if len(i18n.GetLangByIndex(form.Lang)) == 0 {
v.SetError("Lang", "Not Found")
}
}
开发者ID:oyoy8629,项目名称:XWetalk,代码行数:30,代码来源:form.go
示例4: Category
//Get the posts by category
func (this *PostListRouter) Category() {
this.TplNames = "post/home.html"
//check category slug
slug := this.GetString(":slug")
cat := models.Category{Slug: slug}
if err := cat.Read("Slug"); err != nil {
this.Abort("404")
return
}
//get posts by category slug, order by Created desc
qs := models.Posts().Filter("Category", &cat)
cnt, _ := models.CountObjects(qs)
pager := this.SetPaginator(setting.PostCountPerPage, cnt)
qs = qs.OrderBy("-LastReplied").Limit(setting.PostCountPerPage, pager.Offset()).RelatedSel()
var posts []models.Post
models.ListObjects(qs, &posts)
this.Data["Category"] = &cat
this.Data["Posts"] = posts
//top nav bar data
var cats []models.Category
this.setCategories(&cats)
var topics []models.Topic
this.setTopicsOfCategory(&topics, &cat)
this.Data["CategorySlug"] = cat.Slug
this.Data["SortSlug"] = ""
var newBestPosts []models.Post
this.setNewBestPostsOfCategory(&newBestPosts, &cat)
//most replys posts
var mostReplysPosts []models.Post
this.setMostReplysPostsOfCategory(&mostReplysPosts, &cat)
this.setSidebarBuilletinInfo()
}
开发者ID:netxfly,项目名称:wetalk,代码行数:36,代码来源:post.go
示例5: NewPostSubmit
func (this *PostRouter) NewPostSubmit() {
this.TplNames = "post/new.html"
if this.CheckActiveRedirect() {
return
}
form := post.PostForm{Locale: this.Locale}
topicSlug := this.GetString("topic")
if len(topicSlug) > 0 {
topic := models.Topic{Slug: topicSlug}
err := topic.Read("Slug")
if err == nil {
form.Category = topic.Category.Id
form.Topic = topic.Id
this.Data["Topic"] = &topic
} else {
beego.Error("Can not find topic by slug:", topicSlug)
}
} else {
topicId, err := this.GetInt("Topic")
if err == nil {
topic := models.Topic{Id: int(topicId)}
err = topic.Read("Id")
if err == nil {
form.Category = topic.Category.Id
form.Topic = topic.Id
this.Data["Topic"] = &topic
} else {
beego.Error("Can not find topic by id:", topicId)
}
} else {
beego.Error("Parse param Topic from request failed", err)
}
}
if categorySlug := this.GetString("category"); categorySlug != "" {
beego.Debug("Find category slug:", categorySlug)
category := models.Category{Slug: categorySlug}
category.Read("Slug")
this.Data["Category"] = &category
}
post.ListTopics(&form.Topics)
if !this.ValidFormSets(&form) {
return
}
var post models.Post
if err := form.SavePost(&post, &this.User); err == nil {
this.JsStorage("deleteKey", "post/new")
this.Redirect(post.Link(), 302)
}
}
开发者ID:netxfly,项目名称:wetalk,代码行数:52,代码来源:post.go
示例6: Save
// view for new object save
func (this *CategoryAdminRouter) Save() {
form := post.CategoryAdminForm{Create: true}
if this.ValidFormSets(&form) == false {
return
}
var cat models.Category
form.SetToCategory(&cat)
if err := cat.Insert(); err == nil {
this.FlashRedirect(fmt.Sprintf("/admin/category/%d", cat.Id), 302, "CreateSuccess")
return
} else {
beego.Error(err)
this.Data["Error"] = err
}
}
开发者ID:JessonChan,项目名称:wetalk,代码行数:17,代码来源:admin_category.go
示例7: NewSubmit
func (this *CategoryRouter) NewSubmit() {
form := post.CategoryForm{Locale: this.Locale}
this.TplNames = "category/new.html"
if !this.ValidFormSets(&form) {
return
}
var category models.Category
utils.SetFormValues(&form, &category)
if err := category.Insert(); err == nil {
this.Redirect(category.Link(), 302)
}
}
开发者ID:oyoy8629,项目名称:XWetalk,代码行数:16,代码来源:category.go
示例8: CatNavs
func (this *PostListRouter) CatNavs() {
this.TplNames = "post/home.html"
//check category slug and sort slug
catSlug := this.GetString(":catSlug")
sortSlug := this.GetString(":sortSlug")
cat := models.Category{Slug: catSlug}
if err := cat.Read("Slug"); err != nil {
this.Abort("404")
return
}
qs := models.Posts().Filter("Category", &cat)
cnt, _ := models.CountObjects(qs)
pager := this.SetPaginator(setting.PostCountPerPage, cnt)
switch sortSlug {
case "recent":
qs = qs.OrderBy("-Created")
case "hot":
qs = qs.OrderBy("-LastReplied")
case "cold":
qs = qs.Filter("Replys", 0).OrderBy("-Created")
default:
this.Abort("404")
return
}
qs = qs.Limit(setting.PostCountPerPage, pager.Offset()).RelatedSel()
var posts []models.Post
models.ListObjects(qs, &posts)
this.Data["Category"] = &cat
this.Data["Posts"] = posts
//top nav bar data
var cats []models.Category
this.setCategories(&cats)
var topics []models.Topic
this.setTopicsOfCategory(&topics, &cat)
this.Data["CategorySlug"] = cat.Slug
this.Data["SortSlug"] = sortSlug
var newBestPosts []models.Post
this.setNewBestPostsOfCategory(&newBestPosts, &cat)
//most replys posts
var mostReplysPosts []models.Post
this.setMostReplysPostsOfCategory(&mostReplysPosts, &cat)
this.setSidebarBuilletinInfo()
}
开发者ID:netxfly,项目名称:wetalk,代码行数:45,代码来源:post.go
示例9: Topic
//Topic Home Page
func (this *PostListRouter) Topic() {
this.TplNames = "post/topic.html"
//check topic slug
slug := this.GetString(":slug")
topic := models.Topic{Slug: slug}
if err := topic.Read("Slug"); err != nil {
this.Abort("404")
return
}
//get topic category
category := models.Category{Id: topic.Category.Id}
if err := category.Read("Id"); err != nil {
this.Abort("404")
return
}
//get posts by topic
qs := models.Posts().Filter("Topic", &topic)
cnt, _ := models.CountObjects(qs)
pager := this.SetPaginator(setting.PostCountPerPage, cnt)
qs = qs.OrderBy("-LastReplied").Limit(setting.PostCountPerPage, pager.Offset()).RelatedSel()
var posts []models.Post
models.ListObjects(qs, &posts)
this.Data["Posts"] = posts
this.Data["Topic"] = &topic
this.Data["Category"] = &category
//check whether added it into favorite list
HasFavorite := false
if this.IsLogin {
HasFavorite = models.FollowTopics().Filter("User", &this.User).Filter("Topic", &topic).Exist()
}
this.Data["HasFavorite"] = HasFavorite
//new best post
var newBestPosts []models.Post
this.setNewBestPostsOfTopic(&newBestPosts, &topic)
//most replys posts
var mostReplysPosts []models.Post
this.setMostReplysPostsOfTopic(&mostReplysPosts, &topic)
this.setSidebarBuilletinInfo()
}
开发者ID:netxfly,项目名称:wetalk,代码行数:44,代码来源:post.go
注:本文中的github.com/beego/wetalk/modules/models.Category类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论