BeeGo快速使用指南

本文是BeeGo框架的快速使用指南,涵盖了安装、创建项目、启动、路由、Controller以及ORM的使用。通过示例介绍了如何创建路由、Controller逻辑、数据库模型及ORM的基本操作,包括插入、查询、更新和删除。此外,还详细讲解了模型创建的命名规范、属性设置以及一对多和多对多关系的建立。
摘要由CSDN通过智能技术生成

1. 安装与使用

1.1 安装Bee

go get github.com/astaxie/beego
go get -u github.com/astaxie/beego
go get -u github.com/beego/bee

1.2 创建一个Bee项目

创建一个标准的 Bee 项目:

bee new myproject

创建一个 api 应用:

bee api apiproject

创建一个标准的 Bee 项目的目录结构:

├─conf
├─controllers
├─models
├─routers
├─static
│  ├─css
│  ├─img
│  └─js
├─tests
└─views

1.3 启动

在本地以开发模式启动应用:

$ bee run

2. Router

2.1 默认访问

mian.go 中引入路由系统:

// main.go
package main

import (
+   _ "Bee-Study/quickstart/routers"
	"github.com/astaxie/beego"
)

func main() {
	beego.Run()
}

首先在 Controller 层创建对应的 Controller 逻辑:

// controllers/default.go
package controllers

import (
	"github.com/astaxie/beego"
)

type MainController struct {
   
	beego.Controller
}

func (c *MainController) Get() {
   
	c.Ctx.WriteString("hello")
}

然后将路由文件创建于 routers 目录下:

// routers/router.go
package routers

import (
	"Bee-Study/quickstart/controllers"
	"github.com/astaxie/beego"
)

func init() {
   
    beego.Router("/", &controllers.MainController{
   })
}

当我们访问 localhost:prot/ 时就会触发 Controller 层的逻辑, 由于浏览器发送的是 GET 请求,所以就会触发 MainControllerGet() 方法,输出 hello

2.2 不同路由匹配不同方法

由于我们在 MainController 中定义了默认的 Get 方法,所以所有指向 MainController 的路由只要发送 Get 请求就会触发 MainController 的 Get() 方法。但通常我们都希望一个 Controller 对象可以处理多个路由请求,所以我们在调用 beego.Router 时可以传入第三个参数,即让当前匹配的路由可以在对应的请求方式下,触发 Controller 对象下的某一方法:

// router.go
beego.Router("/test", &controllers.MainController{
   }, "get:handleTest")
// controller.go
func (c *MainController) handleTest(){
   
    // do something
}

3. Controller

3.1 创建一个 Controller

Controller 主要负责逻辑控制,通过上一节我们已经创建除了一个简单的 Controller。Controller 不需要在 main.go 中挂载,只需要在对应的 Router 下使用对应的 Controller 即可。

创建一个 Controller 我们要继承一个 beego.Controller 对象:

type MainController struct {
   
	beego.Controller
}

之后我们可以复写其 Get() 方法:

func (c *MainController) 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值