框架简介
beego 是一个快速开发 Go 应用的 HTTP 框架,它可以用来快速开发 API、Web 及后端服务等各种应用,是一个 RESTful 的框架,主要设计灵感来源于 tornado、sinatra 和 flask 这三个框架,但是结合了 Go 本身的一些特性(interface、struct 嵌入等)而设计的一个框架。
我所使用的学习资料:
- beego 官方文档:https://beego.me/
- beego 学习路线图(见文末)
MVC 设计模式
beego 是一个典型的 MVC 设计模式:
- Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。通常模型对象负责在数据库中存取数据。
- View(视图)是应用程序中处理数据显示的部分。通常视图是依据模型数据创建的。
- Controller(控制器)是应用程序中处理用户交互的部分。通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。
项目结构
beego 框架的结构树如下图所示:
├── conf
│ └── app.conf
├── controllers
│ ├── admin
│ └── default.go
├── main.go
├── models
│ └── models.go
├── static
│ ├── css
│ ├── ico
│ ├── img
│ └── js
└── views
├── admin
└── index.tpl
从上面的目录结构我们可以看出来 M(models 目录)、V(views 目录) 和 C(controllers 目录)的结构,main.go 是入口文件,conf 是配置文件目录,controllers 是控制器目录、model 是 model 文件存放目录、static 是静态资源存放目录,views 是界面目录。
搭建教程
现在以 Windows 10 + Golang 1.13 + Jetbrains GoLand 为开发环境演示搭建 beego 框架的教程。
- 安装
打开 Jetbrains GoLand (PowerShell 也可),在终端 Terminal 输入以下命令下载 beego 包,需要挂载代理。
$ go get -u github.com/astaxie/beego
$ go get -u github.com/beego/bee
- 配置环境变量(如果事先已经配置好 Golang 的开发环境可以跳过这一步)
新建一个用户变量 GOPATH,编辑写上你的 Golang 工作目录(用于存放开发者的工程项目及第三方包 );新建一个用户变量 GOROOT,填上你的 Golang 安装路径( 根目录)。
【注】:GOPATH 可以自定义位置,GOROOT 必须遵从 Golang 的安装路径。
- 切换工作目录查看当前包
请注意,开发者的 Golang 源代码文件和第三方包都被保存在 GOPATH 的 src 文件夹下。可切换至工作目录查看 beego 包是否已经下载成功。
$ cd $GOPATH/src
$ cd github.com
$ ls
- 构建 beego 项目
bee 工具是一个为了协助快速开发 beego 项目而创建的项目,通过 bee 您可以很容易的进行 beego 项目的创建、热编译、开发、测试、和部署。
$ bee new beegoProject
$ cd beegoProject
$ bee run
使用 bee new 命令新建一个名为“beegoProject”的项目文件。
切换至 beegoProject 项目文件夹,可以观察到它的项目树结构如下显示:
然后用 cd 命令切换至文件夹,最后用 bee run 初始化文件夹;如果输出以下信息,证明 beegoProject 项目文件已被初始化成功。
根据输出信息,返回一个 URL:http://127.0.0.1:8080,在浏览器打开这个地址,如果能打开这个画面,就证明整个 beego 框架搭建教程就到此结束了!
学习路线
附:beego 学习路线规划