Go-iris-2-控制器
<p>一、main.go</p>
<pre><code class="language-go">package main
import(
"iris/imooc-product/backend/web/controllers"
"github.com/kataras/iris/v12"
"github.com/kataras/iris/v12/mvc"
)
func main(){
app:= iris.New()
app.RegisterView(iris.HTML("./views",".html"))
v1 := app.Party("/v1")
//基于“party”返回一个新的mvc应用程序。
//应用程序创建一个新的引擎,负责绑定依赖项并创建和激活应用程序的控制器。
v1App := mvc.New(v1)
//Handle为当前mvc应用程序的路由器提供控制器。
v1App.Handle(new(controllers.ViewController))
v1App.Handle(new(controllers.GoodsController))
app.Get("/",func(ctx iris.Context){
ctx.HTML("<h2>hello go</h2>")
})
app.Run(iris.Addr(":8080"))
}
</code></pre>
<p>二、控制器定义
goodsController.go</p>
<pre><code class="language-go">import (
"fmt"
"database/sql"
_"github.com/go-sql-driver/mysql"
"github.com/kataras/iris/v12"
"github.com/kataras/iris/v12/mvc"
)
type GoodsController struct{
Ctx iris.Context
}
func (v *GoodsController) GetGoodsAdd() mvc.View {
goodsView := mvc.View{
//文件名,视图文件必须放在views文件夹下,因为这是app := iris.Default()默认
的
//当然你也可以自己设置存放位置
Name: "goods/add.html",
//传入的数据
Data: iris.Map{"content": "商品添加页面"},
}
return goodsView
}
</code></pre>