视图

Iris支持开箱即用的5个模板引擎,开发人员仍然可以使用任何外部golang模板引擎,如 context/context#ResponseWriter() is an io.Writer.

所有这五个模板引擎都具有通用API的共同特征,如布局,模板功能,特定于派对的布局,部分渲染等

标准的html,它的模板解析器就是 golang.org/pkg/html/template/Django,它的模板解析器就是 github.com/flosch/pongo2Pug(Jade),它的模板解析器就是 github.com/Joker/jadeHandlebars, 它的模板解析器 github.com/aymerick/raymondAmber, 它的模板解析器 github.com/eknkc/amber

概述

  1. package main
  2. import "github.com/kataras/iris"
  3. func main() {
  4. app := iris.New()
  5. // 从 "./views" 文件夹加载所以的模板
  6. // 其中扩展名为“.html”并解析它们
  7. // 使用标准的`html / template`包。
  8. app.RegisterView(iris.HTML("./views", ".html"))
  9. // 方法: GET
  10. // 资源: http://localhost:8080
  11. app.Get("/", func(ctx iris.Context) {
  12. //绑定数据
  13. ctx.ViewData("message", "Hello world!")
  14. // 渲染视图文件: ./views/hello.html
  15. ctx.View("hello.html")
  16. })
  17. // 方法: GET
  18. //资源: http://localhost:8080/user/42
  19. app.Get("/user/{id:long}", func(ctx iris.Context) {
  20. userID, _ := ctx.Params().GetInt64("id")
  21. ctx.Writef("User ID: %d", userID)
  22. })
  23. //启动服务
  24. app.Run(iris.Addr(":8080"))
  25. }