经过Gin(二):路由Router ,go语言框架学习的学习,已经对 Gin 有了一个初步的认识和了解,对 router 的简单使用也有了一定的掌握,那么今天就来使用 Gin 来渲染出我们的 html 页面吧。

添加模板

我们仍旧是在上一章节的项目中进行修改。

首先新建一个 templates 文件夹,用于存放我们的模板文件,在文件夹中新建立 index.tmpl。并且编写我们的模板。

    Gin Hello{{ .title }}

小提示 GoLand 现在还未对 tmpl 有高亮显示语法,我们可以将 .tmpl 后缀文件添加到 go Template 模板。方法如下:File-settings-Editor-File Types。(或者我们直接使用 *.gohtml 做为模板也是可以的)如图:

我们可以通过 LoadHTMLGlob 和 LoadHTMLFiles 两个方法来对我们的模板进行加载。其中 LoadHTMLGlob 方法可以将一个目录下所有的模板进行加载,而LoadHTMLFiles只会加载一个文件,他的参数为可变长参数,需要我们一个一个的手动将模板文件填写。这里我们使用 LoadHTMLGlob 方法。

 router.LoadHTMLGlob("templates/*")

此时我们需要修改我们的 / 路由了,不再是让它返回一个字符串,而是返回我们的页面模板。

在 handler 中新建立一个 indexHandler.go ,用来处理我们的 / 路由。

 func Index(context *gin.Context) { context.HTML(http.StatusOK, "index.tmpl

gin 如何返回html_Gin(三):与模板配合使用 tmpl,go web 开发最火框架之一相关推荐

  1. 用gin进行web开发的基本框架搭建

    作者很菜,欢迎交流,不对的请指正! 使用gin构建了一个平常开发易用脚手架,代码简洁易读,可快速进行高效web开发. 主要功能有: mysql/redis的配置 使用viper读取配置文件(yaml) ...

  2. python 模板引擎 对比_Python Web开发模板引擎优缺点总结

    做 Web 开发少不了要与模板引擎打交道.我陆续也接触了 Python 的不少模板引擎,感觉可以总结一下了. 一.首先按照我的熟悉程度列一下: pyTenjin:我在开发 Doodle 和 91 外教 ...

  3. gin ip 和 本地访问的结果不一样_golang web开发——gin实战之整合swagger

    背景 如果我们之前搞过java web开发,我们应该都知道swagger这个API文档自动生成利器,有了swagger可以方便我们与客户端的联调,基本上是一目了然,swagger支持java,自然它也 ...

  4. 网购电商管理系统 nodejs中express框架 mysql数据库 web开发 B/S框架 ejs模板 简单服务器开发

    背景介绍 这个"大项目"开发背景是大二上的C++课设,王老师不明所以的就让我们制作一个类商用的网店管理系统,而且不限制语言,不限制框架,独立完成,时间大约10周.说实话这个项目对刚 ...

  5. Spring Boot 最佳实践(三)模板引擎FreeMarker集成

    一.FreeMaker介绍 FreeMarker是一款免费的Java模板引擎,是一种基于模板和数据生成文本(HMLT.电子邮件.配置文件.源代码等)的工具,它不是面向最终用户的,而是一款程序员使用的组 ...

  6. Django(三)模板

    1 简介 1.1 什么是模板 视图函数的作用是生成请求的响应,这种响应通常就是用户所看到的html网页.模板就是带有模板语法({{ }}, {% %})的html文件,它能接收视图函数传递的变量,通过 ...

  7. java web前端模版,以Eclipse替核心搭建JAVA WEB开发环境(三)-模板项目Archetype

    以Eclipse为核心搭建JAVA WEB开发环境(三)-模板项目Archetype 本篇介绍创建archetype,用于创建WEB项目的模板. 1.创建一个Dynamic Web Project. ...

  8. poj 3486 A Simple Problem with Integers(树状数组第三种模板改段求段)

    1 /* 2 树状数组第三种模板(改段求段)不解释! 不明白的点这里:here! 3 */ 4 #include<iostream> 5 #include<cstring> 6 ...

  9. 给你一个长度为 n 的整数数组 nums 和 一个目标值 target。请你从 nums 中选出三个整数,使它们的和与 target 最接近。 /返回这三个数的和。

    // 给你一个长度为 n 的整数数组 nums 和 一个目标值 target.请你从 nums 中选出三个整数,使它们的和与 target 最接近. // 返回这三个数的和. // 假定每组输入只存在 ...

最新文章

  1. python中如何在写文件之前删除文件内容_Python:文件的读取、创建、追加、删除、清空...
  2. 阿里BCG重磅报告《人工智能,未来致胜之道》
  3. nginx反向代理和rewrite进行解决跨域问题、去掉url中的一部分字符串,通过nginx正则生成新的url...
  4. HDU 3790 最短路径问题
  5. dcmm认证的条件_DCMM认证 数据管理能力成熟度模型评估
  6. 关于string,我今天科普的
  7. 数据库优化:8 种常见的SQL错误用法
  8. 爬取豌豆荚app数据(总结篇)
  9. 微软一个关于team editon vs 2005文章的集锦页面
  10. 【云计算的1024种玩法】搭建 wiki 知识库
  11. java项目第12期-淘客系统源码(安卓+IOS+java后端)【毕业设计】
  12. 我的世界虚无2可直连服务器IP,我的世界虚无世界服务器1.7.10
  13. 支付接口的API什么?SDK是什么?
  14. 第五周 项目二 建立链栈算法库
  15. 设置CFLAGS后,编译无效
  16. 数据库基本知识掌握(一)
  17. 经典的二叉树的先根、中根和后根遍历序列题
  18. linux 硬盘对拷,比ghost好用
  19. 2008最火爆的十大网络流行语:
  20. Centos7的yum安装报错Error: Nothing to do

热门文章

  1. 重磅上线|国内首个 Kubernetes SIG-Cloud-Provider 子项目揭秘
  2. php100 swfupload,swfupload上传图片读取最大只有100*75
  3. cookie java 写入_JAVA中如何读写COOKIE
  4. 谷歌紧急更新,Chrome 今年第二个零日漏洞曝光
  5. 时代变了,199 美元的 iPhone 都可以想了?
  6. 中国开发者数量全球第二,C 语言一跌再跌 | GitHub 年度报告发布
  7. Rust跨界前端全攻略
  8. 基于Flink CDC打通数据实时入湖
  9. 从鲁班造木鸢到智能控制,图解世界无人机发展简史
  10. 阿里云智能开放平台团队何登成:解码云计算的 2B 服务基因 | 问底中国 IT 技术演进...