• 创建项目
    • 运行项目

    创建项目

    beego 的项目基本都是通过 bee 命令来创建的,所以在创建项目之前确保你已经安装了 bee 工具和 beego。如果你还没有安装,那么请查阅 beego 的安装 和 bee 工具的安装。

    现在一切就绪我们就可以开始创建项目了,打开终端,进入 $GOPATH/src 所在的目录:

    1. src bee new quickstart
    2. [INFO] Creating application...
    3. /gopath/src/quickstart/
    4. /gopath/src/quickstart/conf/
    5. /gopath/src/quickstart/controllers/
    6. /gopath/src/quickstart/models/
    7. /gopath/src/quickstart/routers/
    8. /gopath/src/quickstart/tests/
    9. /gopath/src/quickstart/static/
    10. /gopath/src/quickstart/static/js/
    11. /gopath/src/quickstart/static/css/
    12. /gopath/src/quickstart/static/img/
    13. /gopath/src/quickstart/views/
    14. /gopath/src/quickstart/conf/app.conf
    15. /gopath/src/quickstart/controllers/default.go
    16. /gopath/src/quickstart/views/index.tpl
    17. /gopath/src/quickstart/routers/router.go
    18. /gopath/src/quickstart/tests/default_test.go
    19. /gopath/src/quickstart/main.go
    20. 2014/11/06 18:17:09 [SUCC] New application successfully created!

    通过一个简单的命令就创建了一个 beego 项目。他的目录结构如下所示

    1. quickstart
    2. |-- conf
    3. | `-- app.conf
    4. |-- controllers
    5. | `-- default.go
    6. |-- main.go
    7. |-- models
    8. |-- routers
    9. | `-- router.go
    10. |-- static
    11. | |-- css
    12. | |-- img
    13. | `-- js
    14. |-- tests
    15. | `-- default_test.go
    16. `-- views
    17. `-- index.tpl

    从目录结构中我们也可以看出来这是一个典型的 MVC 架构的应用,main.go 是入口文件。

    运行项目

    beego 项目创建之后,我们就开始运行项目,首先进入创建的项目,我们使用 bee run 来运行该项目,这样就可以做到热编译的效果:

    1. src cd quickstart
    2. quickstart bee run
    3. 2014/11/06 18:18:34 [INFO] Uses 'quickstart' as 'appname'
    4. 2014/11/06 18:18:34 [INFO] Initializing watcher...
    5. 2014/11/06 18:18:34 [TRAC] Directory(/gopath/src/quickstart/controllers)
    6. 2014/11/06 18:18:34 [TRAC] Directory(/gopath/src/quickstart)
    7. 2014/11/06 18:18:34 [TRAC] Directory(/gopath/src/quickstart/routers)
    8. 2014/11/06 18:18:34 [TRAC] Directory(/gopath/src/quickstart/tests)
    9. 2014/11/06 18:18:34 [INFO] Start building...
    10. 2014/11/06 18:18:35 [SUCC] Build was successful
    11. 2014/11/06 18:18:35 [INFO] Restarting quickstart ...
    12. 2014/11/06 18:18:35 [INFO] ./quickstart is running...
    13. 2014/11/06 18:18:35 [app.go:96] [I] http server Running on :8080

    这样我们的应用已经在 8080 端口(beego 的默认端口)跑起来了.你是不是觉得很神奇,为什么没有 nginx 和 apache 居然可以自己干这个事情?是的,Go 其实已经做了网络层的东西,beego 只是封装了一下,所以可以做到不需要 nginx 和 apache。让我们打开浏览器看看效果吧:

    beerun.png

    你内心是否激动了?开发网站如此简单有没有。好了,接下来让我们一层一层的剥离来大概的了解 beego 是怎么运行起来的。

    路由设置