beego 是一個快速開發 Go 應用的 HTTP 框架,他能夠用來快速開發 API、Web 及後端服務等各類應用,是一個 RESTful 的框架,主要設計靈感來源於 tornado、sinatra 和 flask 這三個框架,可是結合了 Go 自己的一些特性(interface、struct 嵌入等)而設計的一個框架。css
beego 的安裝是典型的 Go 安裝包的形式:html
go get github.com/astaxie/beego
Go 升級,經過該方式用戶能夠升級 beego 框架,強烈推薦該方式:前端
go get -u github.com/astaxie/beego
源碼下載升級,用戶訪問 https://github.com/astaxie/beego
,下載源碼,而後覆蓋到 $GOPATH/src/github.com/astaxie/beego
目錄,而後經過本地執行安裝就能夠升級了:vue
go install github.com/astaxie/beego
bee 工具是一個爲了協助快速開發 beego 項目而建立的項目,經過 bee 您能夠很容易的進行 beego 項目的建立、熱編譯、開發、測試、和部署。相似於前端框架vue的腳手架工具vue-cli。git
go get github.com/beego/bee
注意:必定要在系統環境變量配置$GOPATH,$GOPATH所對應的目錄用來存放Go源碼,Go的可運行文件,以及相應的編譯以後的包文件。因此這個目錄下面有三個子目錄:src、bin、pkg,且不能和go的安裝目錄同樣,它默認在"c:/user"目錄下,固然本身也能夠更改至其餘盤,但前提是在該目錄下存在go文件夾。github
安裝好以後,能夠在$GOPATH所對應的目錄下bin文件夾裏找到可執行文件bee.exevue-cli
以後,在命令行輸入bee
,測試是否安裝成功,若是出現如下信息,則說明安裝成功:docker
Bee is a Fast and Flexible tool for managing your Beego Web Application. Usage: bee command [arguments] The commands are: version show the bee & beego version migrate run database migrations api create an api application base on beego framework bale packs non-Go files to Go source files new create an application base on beego framework run run the app which can hot compile pack compress an beego project fix Fixes your application by making it compatible with newer versions of Beego dlv Start a debugging session using Delve dockerize Generates a Dockerfile for your Beego application generate Source code generator hprose Creates an RPC application based on Hprose and Beego frameworks pack Compresses a Beego application into a single file rs Run customized scripts run Run the application by starting a local development server server serving static content over HTTP on port Use bee help [command] for more information about a command.
若是沒有出現以上信息,並提示改命令不存在,能夠將bee.exe可執行文件拷貝到go安裝目錄bin文件夾下flask
new
命令new
命令是新建一個 Web 項目,咱們在命令行下執行 bee new <項目名>
就能夠建立一個新的項目。可是注意該命令必須在 $GOPATH/src
下執行。最後會在 $GOPATH/src
相應目錄下生成以下目錄結構的項目:後端
bee new myproject [INFO] Creating application... /gopath/src/myproject/ /gopath/src/myproject/conf/ /gopath/src/myproject/controllers/ /gopath/src/myproject/models/ /gopath/src/myproject/static/ /gopath/src/myproject/static/js/ /gopath/src/myproject/static/css/ /gopath/src/myproject/static/img/ /gopath/src/myproject/views/ /gopath/src/myproject/conf/app.conf /gopath/src/myproject/controllers/default.go /gopath/src/myproject/views/index.tpl /gopath/src/myproject/main.go 13-11-25 09:50:39 [SUCC] New application successfully created!
api
命令上面的 new
命令是用來新建 Web 項目,不過不少用戶使用 beego 來開發 API 應用。因此這個 api
命令就是用來建立 API 應用的,執行命令以後以下所示:
bee api apiproject create app folder: /gopath/src/apiproject create conf: /gopath/src/apiproject/conf create controllers: /gopath/src/apiproject/controllers create models: /gopath/src/apiproject/models create tests: /gopath/src/apiproject/tests create conf app.conf: /gopath/src/apiproject/conf/app.conf create controllers default.go: /gopath/src/apiproject/controllers/default.go create tests default.go: /gopath/src/apiproject/tests/default_test.go create models object.go: /gopath/src/apiproject/models/object.go create main.go: /gopath/src/apiproject/main.go
從上面的目錄咱們能夠看到和 Web 項目相比,少了 static 和 views 目錄,多了一個 test 模塊,用來作單元測試的。
run
命令bee run
命令是監控 beego 的項目,經過fsnotify監控文件系統。可是注意該命令必須在 $GOPATH/src/appname
下執行。
bee run 13-11-25 09:53:04 [INFO] Uses 'myproject' as 'appname' 13-11-25 09:53:04 [INFO] Initializing watcher... 13-11-25 09:53:04 [TRAC] Directory(/gopath/src/myproject/controllers) 13-11-25 09:53:04 [TRAC] Directory(/gopath/src/myproject/models) 13-11-25 09:53:04 [TRAC] Directory(/gopath/src/myproject) 13-11-25 09:53:04 [INFO] Start building... 13-11-25 09:53:16 [SUCC] Build was successful 13-11-25 09:53:16 [INFO] Restarting myproject ... 13-11-25 09:53:16 [INFO] ./myproject is running...
bee run -downdoc=true
更新 swagger-ui
,若是 swagger
目錄沒有 swagger-ui
則會自動下載安裝