Beego脱坑(一)Beego简介和安装


title: Beego脱坑(一)Beego简介和安装

tags: go,beego

author: Clown95


beego 简介

beego 是一个快速开发 Go 应用的 HTTP 框架,也是一个 RESTful模式的框架。

REST:指的就是一组约束条件和原则。满足这些约束条件和原则的应用程序或设计就是RESTful。Web应用程序最重要的原则是客户端和服务器之间的交互,从客户端到服务器的每个请求都必须包含理解请求所必须的信息。如果服务器在请求之间的任何时候重启或宕机,客户端不会得到通知。客户端可以通过缓存数据的形式来提高性能。

 

beego 的架构

beego 的整体设计架构如下所示:

Beego脱坑(一)Beego简介和安装_第1张图片

 

Beego是一个典型MVC

 

V:view首字母,指用户看到并与其交互的界面,比如由html元素组成的网页界面,或者软件客户端界面。

M:mode首字母,是应用程序和数据库交互的载体,这样一个能够为多个视图提供数据,由于模型中的代码只需写一次就可以被多个视图重用,提高代码的复用性。

C:controller首字母,控制器的意思,控制器本身不输出任何东西,只是接收请求并决定调用那个模型和视图去完成用户的需求。

 

项目结构

一般的 beego 项目的目录如下所示:

├── conf           //配置文件
│   └── app.conf
├── controllers    //控制器
│   ├── admin
│   └── default.go
├── main.go        //项目入口
├── models         //模型   
│   └── models.go
├── routers       //路由
│   └──router.go
├── static         //静态文件
│   ├── css
│   ├── ico
│   ├── img
│   └── js
└── views          //界面模板
    ├── admin
    └── index.tpl

 

bee工具介绍

bee安装完成之后,在终端中输入bee,会看到以下内容。

Beego脱坑(一)Beego简介和安装_第2张图片

我们挑选几个常用的简单介绍下:

  • version 用来查看beego版本
  • new xxx 用来创建一个名字为xxx的项目
  • api xxx 主要用来创建名字为xxx的api项目.相比于new它少了 static 和 views 目录,多了一个 test 模块,用来做单元测试的。
  • pack 用来打包应用程序,这样我们部署的时候直接将打包之后的项目上传,解压就可以部署。
  • run xxx 用来启动某个名字为xxx的项目

beego安装

在安装beego之前,需要先安装好go和git,并且配置好GOROOT和GOPATH环境变量。我默认大家已经配置好这个环境,如果对这个环境配置有疑问的可以查阅其他文章。


 使用go get

  • 使用go get命令安装beego文件
go get github.com/astaxie/beego

  • 安装bee工具
go get github.com/beego/bee

检查安装

当我们beego库和bee工具都安装好后,我们可以在终端输入bee,可以看到如下的信息:

Beego脱坑(一)Beego简介和安装_第3张图片

Beego脱坑(一)Beego简介和安装_第4张图片

  • new create an application base on beego framework //创建一个新的beego应用
  • run run the app which can hot compile //运行编译程序
  • pack compress an beego project //打包一个编译好的项目
  • api create an api application base on beego framework //创建一个API应用框架
  • bale packs non-Go files to Go source files
  • version show the bee & beego version //查看beego版本
  • generate source code generator //生成源代码
  • migrate run database migrations //运行数据库迁移

如果“ 出现’bee’ 不是内部或外部命令,也不是可运行的程序”,则表示安装失败了。这时候我们首先查看环境变量是否设置好,如果环境变量没有问题 ,直接打开浏览器访问github 看是否被墙了。

 

 

你可能感兴趣的:(#,beego)