Beego路由设置和MVC

文档对应视频课程中3.3章节,请小伙伴们对应学习。

路由设置

有两种方式:

  1. 在router.php中配置

    beego.Router("/hello", &controllers.MainController{}, "get:GetHello")

  2. 在router.php中include引入,直接在函数上方配置规则

    beego.Include(&controllers.DemoController{})

     // @router /demo/hello [get]
     func (this *DemoController) GetHello() {
         var (
             title string
         )
         title = "Hello World!"
         this.Ctx.WriteString(title)
     }
    

MVC模式

在目录下有 controllers models views 文件夹分别存放controller文件,model文件和模板文件。后面项目中用到的文件都会分别在这三个文件夹中

过滤器和配置信息

过滤器,为什么有过滤器呢?

比如,进行安全验证,访问用户中心的时候,进行是否登录的判断可以在过滤器中,也可以实现屏蔽IP的功能,屏蔽黑名单的功能等等,对项目有整体的规则时,都可以在过滤器中实现,不用在每个函数中来实现了

过滤器是通过beego.insertfilter函数来实现的

在router文件中

    beego.InsertFilter("/demo/*", beego.BeforeRouter, FilterDemo)

    var FilterDemo = func(ctx *context.Context) {
        var (
            title string
        )
        title = "禁止访问"
        ctx.WriteString(title)
    }

这里是屏蔽规则,包含demo/的url都走过滤规则;第二个参数是BeforeRouter,在寻找路由之前;第三个参数是函数名。

配置信息

beego提供了专门配置文件,配置信息定义在conf文件夹中的app.conf

    appname = fyouku //项目名称
    httpport = 8098  //访问端口号
    runmode = dev    //运行环境,下面会根据运行环境加载不同配置

    [dev]
    apiurl = http://127.0.0.1:8099
    microApi = http://127.0.0.1:8085

    [prod]
    apiurl = http://127.0.0.1:8099
    microApi = http://127.0.0.1:8085

静态文件

项目中的css、js、img文件都是怎样访问的,bee new创建的项目中有static文件夹,这是beego默认注册的静态文件处理目录

├── static
    │   ├── css
    │   ├── img
    │   └── js

访问地址为:http://127.0.0.1:8080/static/js/fyouku.js

也可以通过下面命令来自定义目录

beego.SetStaticPath("/down1", "download1")

results matching ""

    No results matching ""