beego mysql 配置_Go语言之高级篇beego框架之参数配置与路由配置

本文详细介绍了如何在Go语言的beego框架中进行MySQL配置和路由设置。首先讲解了beego如何读取app.conf配置文件,并展示了开发模式的配置示例。接着,文章阐述了基础路由的两种设定方式,并深入到RESTful规则的自定义方法,包括多个HTTP方法映射到同一函数的实现。最后,提供了代码示例以帮助理解。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、参数配置

beego默认会解析当前应用下的conf/app.conf文件

1.1、beego的参数配置

appname = WEB

httpport = 8080

runmode = dev

几种开发模式

[dev]

httpprot = 8080

[prod]

httpport = 8081

[test]

httpport = 8082

//备注:

beego.AppConfig.String( "dev::mysqluser" ) //dev标签

1.2、beego的应用参数配置

mysqladrr = "127.0.0.1"

mysqlprot = 9090

mysqluser

mysqlpassword

二、路由配置

2.1、基础路由

法一:

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

beego.Router("/admin", &admin.UserController{})

beego.Router("/admin/index", &admin.ArticleController{})

beego.Router("/admin/addpkg", &admin.AddController{})

法二:

beego.Get("/",func(ctx * context.Context){

ctx.Output.Body([]bype("hello world"))

})

示例:配置路由

修改配置文件: vi  /routers/router.go

a、带路由名称

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

#访问网站

http://127.0.0.1:8080/beego

b、根目录

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

#访问网站

http://127.0.0.1:8080

2.2、自定义方法RESTful规则

#设置请求的方法

beego.Router("/",&IndexController{},"*:Index")

* 表示任意的method都执行该函数

使用httpmethod:funcname格式来展示

多个不同的格式使用; 分割

多个method对应同一个funcname, method之间通过,来分割

以下是一个 RESTful 的设计示例:

beego.Router("/api/list",&RestController{},"*:ListFood")

beego.Router("/api/create",&RestController{},"post:CreateFood")

beego.Router("/api/update",&RestController{},"put:UpdateFood")

beego.Router("/api/delete",&RestController{},"delete:DeleteFood")

以下是多个 HTTP Method 指向同一个函数的示例:

beego.Router("/api",&RestController{},"get,post:ApiFunc")

以下是不同的 method 对应不同的函数,通过 ; 进行分割的示例:

beego.Router("/simple",&SimpleController{},"get:GetFunc;post:PostFunc")

示例:

vi controllers/default.go

package controllers

import (

"github.com/astaxie/beego"

)

type MainController struct {

beego.Controller

}

func (c *MainController) Get() {

c.Data["Website"] = "beego.me"

c.Data["Email"] = "astaxie@gmail.com"

c.TplName = "index.tpl"

}

func (c *MainController) Post() {

c.Ctx.WriteString("this is method post!")

}

vi  routers/router.go

package routers

import (

"WEB/controllers"

"github.com/astaxie/beego"

)

func init() {

beego.Router("/", &controllers.MainController{}, "get:Get;post:Post")

}

执行结果:

先安装git 软件

EZr2Yr.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值