Супер пупер быстрый старт

This only work for Beego 1.x. If you are using Beego 2.x, please change language to EN-US.

Установка

BeeGo содержит тестовое приложение на котором вы можете изучить как использовать BeeGo app framework.

Вам нужен установленный Go 1.1 для того что бы запустить BeeGo.

Вам нужно установить BeeGo и иснтрумент разработчика Bee:

  1. $ go get -u github.com/astaxie/beego
  2. $ go get -u github.com/beego/bee

Для удобства, вы должны добавить $GOPATH/bin в вашу переменную окружения $PATH.

Хотите быстро увидеть как это работает? Тогда сделайте пару простых шагов:

  1. $ cd $GOPATH/src
  2. $ bee new hello
  3. $ cd hello
  4. $ bee run

Windows пользователи

  1. > cd %GOPATH%/src
  2. > bee new hello
  3. > cd hello
  4. > bee run hello

Эти команды помогут вам:

  1. Установите BeeGo в ваш $GOPATH.
  2. Установите Bee tool на ваш компьютер.
  3. Создайте новое приложение с именем hello.
  4. Скомпилируйте.

После того как BeeGo запустится, откройте в браузере http://localhost:8080/.

Простой пример

Этот пример выведет Hello world в браузер, это показывает насколько просто можно сделать веб-приложение на BeeGo.

  1. package main
  2. import (
  3. "github.com/astaxie/beego"
  4. )
  5. type MainController struct {
  6. beego.Controller
  7. }
  8. func (this *MainController) Get() {
  9. this.Ctx.WriteString("hello world")
  10. }
  11. func main() {
  12. beego.Router("/", &MainController{})
  13. beego.Run()
  14. }

Сохраните файл как hello.go, скомпилируйте и запустите:

  1. $ go build -o hello hello.go
  2. $ ./hello

Откройте http://127.0.0.1:8080 в браузере и вы должны будете увидеть hello world.

Что происходит в приведенном выше примере?

  1. Мы импортируем пакет github.com/astaxie/beego. Как вы знаете, Go запускает метод init() при инициализации каждого пакета (больше деталей об этом), так вот beego инициализирует приложение именно в этот момент.
  2. Создаем контроллер. Мы создаем структуру названную MainController с анонимным полем beego.Controller, и таким образом MainController получает все методы которые имеет beego.Controller.
  3. Создаем RESTful метод. Благодаря анонимному полю, про которое было сказано выше, MainController уже имеет методы Get, Post, Delete, Put. Эти методы будут вызваны когда пользователь пошлет соответствующий запрос (к примеру: метод Post будет вызван для обработки POST запроса). Поэтому, мы перегрузили метод Get в MainController и теперь все GET запросы будут использовать этот метод в MainController вместо beego.Controller.
  4. Создаем главный метод. Все приложения в Go используют main как точку вхождения подобно тому как это делается в C.
  5. Регистрируем роуты. Они сообщают BeeGo какой контроллер будет отвечать на конкретный запрос. Здесь мы регистрируем MainController для /, и после этого все запросы на / будут обработаны MainController. Имейте в виду что первый аргумент это путь, а второй аргумент это указатель на контроллер который вы хотите зарегистрировать.
  6. Запускаем приложение на порту по-умолчанию 8080. Если хотите закрыть приложение, то нажмите Ctrl+c.

Following are shortcut .bat files for Windows users:

Создайте два файла step1.install-bee.bat и step2.new-beego-app.bat в %GOPATH%/src.

step1.install-bee.bat:

  1. set GOPATH=%~dp0..
  2. go build github.com\beego\bee
  3. copy bee.exe %GOPATH%\bin\bee.exe
  4. del bee.exe
  5. pause

step2.new-beego-app.bat:

  1. @echo Set value of APP same as your app folder
  2. set APP=coscms.com
  3. set GOPATH=%~dp0..
  4. set BEE=%GOPATH%\bin\bee
  5. %BEE% new %APP%
  6. cd %APP%
  7. echo %BEE% run %APP%.exe > run.bat
  8. echo pause >> run.bat
  9. start run.bat
  10. pause
  11. start http://127.0.0.1:8080

Запустите эти два файла для быстрого старта в вашем изучении BeeGo. А в дальнейшем просто запускайте run.bat, если хотите запустить BeeGo снова.