使用beego搭建的简易blog项目

main.go

package main

import (
	"Dmgoweb/controllers"
	"Dmgoweb/models"
	"github.com/astaxie/beego"
	"github.com/astaxie/beego/orm"
)

func init() {
	models.RegisterDB()
}

func main() {
	orm.Debug = true
	orm.RunSyncdb("default", false, true)
	//注册路由  这是beego的方法
	beego.Router("/", &controllers.HomeController{})
	beego.Router("/login", &controllers.LoginController{})
	beego.Router("/topic", &controllers.TopicController{})
	beego.AutoRouter(&controllers.TopicController{})
	beego.Router("/reply", &controllers.ReplyController{})
	beego.Router("/reply/add", &controllers.ReplyController{}, "post:Add")
	beego.Router("/reply/delete", &controllers.ReplyController{}, "get:Delete")
	beego.Router("/category", &controllers.CategoryController{})
	beego.Run()
}


controllers主页实例--其他实例请详见工程

package controllers

import (
	"Dmgoweb/models"
	"github.com/astaxie/beego"
)

type HomeController struct {
	beego.Controller
}

func (c *HomeController) Get() {
	c.TplNames = "home.html" //显示页面格式
	c.Data["IsHome"] = "true"
	c.Data["IsLogin"] = checkAccount(c.Ctx)

	topics, err := models.GetAllTopics(c.Input().Get("cate"), true)
	if err != nil {
		beego.Error(err.Error())
	} else {
		c.Data["Topics"] = topics
	}

	categories, err := models.GetAllCategories()
	if err != nil {
		beego.Error(err)
	}

	c.Data["Categories"] = categories
}


models中实现了具体的逻辑处理,代码有点长,就不贴出来了,具体请见工程中models文件下的models.go文件

目录中的static文件,需要将bootstrap下载之后,导入其中的css fonts js文件夹
views目录放置各个模板文件

使用beego搭建的简易blog项目_第1张图片

工程请移步到百度云下载链接: http://pan.baidu.com/s/1bnMPCBX 密码: 2kgp

你可能感兴趣的:(使用beego搭建的简易blog项目)