beego2学习
Beego2
的学习, 采用 golang
的 modules 模式管理项目
环境介绍:
- window 10 64位 家庭版
安装环境
安装 golang
语言环境
官网下载Golang
下载地址: https://golang.google.cn/dl/, 我是 window 10 的, 所以下载 “go1.15.6.windows-amd64.zip” 的类型
解压后, 放到 ‘F:\language\golang_1.15.6’ 目录下:
但是, 需要配置 go
的环境变量
从这儿就能看出, 环境变量就是我们解压出来 go
目录下的 bin
目录. bin
里面有我们需要执行的 go.exe, 后面的命令我们都会用到这个的
环境变量配置好了以后, 就可以在桌面打开命令窗口, 直接输入:
go version
控制就会弹出 go
的版本号
go version go1.15.6 windows/amd64
这就说明我们还是安装成功了的.
Go modules
网上很多 go
modules 的教程, 废话不多说, 提出关键信息:
- 要使用go module 首先要设置GO111MODULE=on,
- GO111MODULE 有三个值,off、on、auto,
- off 和 on 即关闭和开启,
- auto 则会根据当前目录下是否有 go.mod 文件来判断是否使用 modules 功能。
- 无论使用哪种模式,module 功能默认不在 GOPATH 目录下查找依赖文件,
- 所以使用 modules 功能时请设置好代理。
首先, 我们在控制台执行
go env
输出信息我们能看到关键的的 GO111MODULE
和 GOPATH
:GO111MODULE
是为空的, 说明没开启,GOPATH
是系统默认的.
OK, 先修改 gopath
: 控制台中输入命令:
go env -w GOPATH=F:\support\gopath_
然后是开启 go modules:
直接在命令行中执行:
go env -w GO111MODULE=on
最后再来看效果:
可以看到: 修改gopath后,另一个参数也变了, 为什么会变? 我也不知道┑( ̄Д  ̄)┍
注意:
由于golang是google家的, 默认用的国外服务器, 可能要翻墙, 所以需要修改代理为国内的的.
直接在命令行执行:
go env -w GOPROXY=https://goproxy.cn
至此, golang环境基本配置OK o( ̄▽ ̄)ブ
安装Beego
先找个空的文件夹 “F:\project\beego\hellov2”
然后在这个文件夹中打开控制台, 输入
go get -u github.com/beego/beego/v2
执行完毕后, 我们在 hellov2 文件夹中开不到任何东西, 然后在 gopath
指定的文件夹中会多出一个 pkg
文件夹
为什么呢? 我还是不知道 ┑( ̄Д  ̄)┍
然后我用命令初始化了一个 module
go mod init hellov2
这儿 hellov2
其实也是项目名, 初始化后, hellov2 文件夹总会多一个 go.mod
的文件, 文件中内容:
然后执行 beego
官网上的安装命令:
$ go get -u github.com/beego/beego/v2
$ go get -u github.com/beego/bee/v2
执行结束后, 你会返现 go.mod 里面有 require
了, 然后还多了一个 go.sum 文件,
这个俩个文件有啥用, 我也不知大, 明天再来看吧 `┗|`O′|┛ 嗷~~
2020-12-19 接着来
上次我们通过 beego
官网的快速入门知道了俩条命令:
go get -u github.com/beego/beego/v2
go get -u github.com/beego/bee/v2
这俩条命令执行了就发现在 %gopath%/pkg/mod/
多了一堆包, 看名称估计应该就是 beego
依赖相关的包吧
然后 hellov2
文件中并没有多任何包, 同时, 自己创建了一个 src/main/main.go
文件, 执行
go build .\src\main\main.go
命令, 反而提示我找不到 ‘github.com/beego/beego/v2/server/web’ 包时, 我就知道, 肯定是哪儿没对
按照网上教程说的, go modules 应该会在当前项目里面管理, 然后当前项目并没有 包,
按照教程, 我又执行了
go mod download
并没有任何变化; 于是再次执行:
go mod vendor
hellov2
中多了一个 vendor
文件夹, 里面还多了一个 modules.txt
; 但是依然没有依赖包,
于是我再次执行了 go mod vendor
指令后, vendor
中多了好几个包, 看来是成功了.
接着执行:
go build .\src\main\main.go
执行结束后, 在 hellov2
文件夹多了个 main.exe
文件, 直接在控制台运行, 就完成了
汇总一下
好了, 上面说了那么多过程废话, 下面窝馒来汇总一下, 结合 beego
官网的 快速入门, 第一个 beego
“hello word” 过程:
说明下: 我的环境是 window 10 的, 所有过程都是按照 window 10 的来做的.
- 在任何地方创建一个文件夹(假如项目名叫:
hellobeego
, 我们可以创建一个hellobeego
的文件夹); - 进入
hellobeego
文件夹, 打开控制台窗口; - 执行初始化 modules 的命令:
go mod init hellobeego
(这儿 hellobeego 是项目名, 又什么用, 还暂时不知道 ,,ԾㅂԾ,, ); - 创建一个
main.go
文件, 里面就写 beego 官网快速入门里面 ‘简单示例’ 的代码就好了; - 执行检测依赖命令:
go mod tidy
; - 执行下载依赖命令:
go mod download
; - 执行导入依赖命令:
go mod vendor
; - 执行go编译命令:
go build main.go
; - 编译后就有个
main.exe
文件, 然后直接执行这个exe文件; - 访问
localhost:8080/
页面就有hello word
了;
继续
beego 官网上是有 beego 的文件结构的, 我们按照他的文件目录创建一个
quickstart
|-- conf
| `-- app.conf
|-- controllers
| `-- default.go
|-- main.go
|-- models
|-- routers
| `-- router.go
|-- static
| |-- css
| |-- img
| `-- js
|-- tests
| `-- default_test.go
`-- views
`-- index.tpl
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!