コード例 #1
0
ファイル: admin_topic.go プロジェクト: varding/wetalk
// view for list model data
func (this *TopicAdminRouter) List() {
	var topics []models.Topic
	qs := models.Topics().OrderBy("-Category__id").RelatedSel()
	if err := this.SetObjects(qs, &topics); err != nil {
		this.Data["Error"] = err
		beego.Error(err)
	}
}
コード例 #2
0
ファイル: topic_form.go プロジェクト: varding/wetalk
func (form *TopicAdminForm) Valid(v *validation.Validation) {
	qs := models.Topics()

	if models.CheckIsExist(qs, "Name", form.Name, form.Id) {
		v.SetError("Name", "admin.field_need_unique")
	}

	if models.CheckIsExist(qs, "Slug", form.Slug, form.Id) {
		v.SetError("Slug", "admin.field_need_unique")
	}
}
コード例 #3
0
ファイル: admin_category.go プロジェクト: varding/wetalk
// view for delete object
func (this *CategoryAdminRouter) Delete() {
	if this.FormOnceNotMatch() {
		return
	}
	// check whether there are topics under the category
	qs := models.Topics().Filter("Category__Id", this.object.Id)
	cnt, _ := qs.Count()
	if cnt > 0 {
		this.FlashRedirect("/admin/category", 302, "DeleteNotAllowed")
		return
	} else {
		// delete object
		if err := this.object.Delete(); err == nil {
			this.FlashRedirect("/admin/category", 302, "DeleteSuccess")
			return
		} else {
			beego.Error(err)
			this.Data["Error"] = err
		}
	}
}
コード例 #4
0
ファイル: admin_topic.go プロジェクト: varding/wetalk
func (this *TopicAdminRouter) ObjectQs() orm.QuerySeter {
	return models.Topics().RelatedSel()
}
コード例 #5
0
ファイル: topic_util.go プロジェクト: varding/wetalk
func ListTopicsOfCategory(topics *[]models.Topic, cat *models.Category) (int64, error) {
	return models.Topics().Filter("Category__id", cat.Id).OrderBy("-order").All(topics)
}
コード例 #6
0
ファイル: topic_util.go プロジェクト: varding/wetalk
func ListTopics(topics *[]models.Topic) (int64, error) {
	return models.Topics().OrderBy("-Followers").All(topics)
}