一直在学着使用gin,今天试了下gin的模板渲染,一路比较坑。真要吐槽下某度,啥都没有。

参考资料:https://www.bookstack.cn/read/gin-doc/response.md

https://juejin.im/post/5b026a4c6fb9a07aac24c122

https://blog.csdn.net/moxiaomomo/article/details/51153779

https://blog.csdn.net/a976134036/article/details/78867297

github源码查看:https://github.com/caogenlaoxian/golang

首先看下我的目录结构:

其中layout放置的是公共html,msg放置的是程序需要的html

layout/header.html文件

(1)任何文件要以{{define "layout/header"}} 开始,最后{{end}}结束,footer.html文件一样要遵循这种方式,

(2)公共头部 define一定不要加文件名的后缀

{{define "layout/header"}}
<!DOCTYPE html><!--[if IE 8]> <html lang="en" class="ie8 no-js"> <![endif]--><!--[if IE 9]> <html lang="en" class="ie9 no-js"> <![endif]--><!--[if !IE]><!--> <html lang="en" class="no-js"> <!--<![endif]--><!-- BEGIN HEAD --><head><meta charset="utf-8" /><title>{{.title}}</title><meta content="width=device-width, initial-scale=1.0" name="viewport" /><meta content="" name="description" /><meta content="" name="author" /></head><!-- END HEAD --><!-- BEGIN BODY --><body class="page-header-fixed">{{end}}

msg/index.html

(1)文件要以{{define "msg/index.html"}} 开始,最后{{end}}结束,这里的index可以加文件后缀,index.html

(2)需要通过{{template "layout/head" .}} 最后面有个【点】,它的意思是要把当前页面的变量传递到head.html中。

{{ define "msg/index.html" }}
{{template "layout/header" .}}
<div class="row pull-right" style="margin-bottom: 20px;margin-right: 5px;text-align:right;margin-right: 40px;"><input type="text" placeholder="请输入名称" id="txt_search"/><button class="" onclick="search()">搜索</button><button class="" onclick="adddata()">新增</button></div><table class="table table-striped table-hover table-bordered "><thead><th style="text-align: center">ID</th><th style="text-align: center">姓氏</th><th style="text-align: center">名称</th><th style="text-align: center">操作</th></thead><tbody id="sortable"></tbody></table> <!--分页部分--><div style="margin: 20px 0px 10px 0;"><table style="margin: 0 auto;"><tr><td><div id="pagination" class="pagination"></div></td></tr></table></div>{{range .data}}{{.Title}},{{.Content}}{{end}}
{{template "layout/footer" .}}
{{end}}

msg.go输出html的代码

c.HTML(http.StatusOK, "msg/index.html", gin.H{"title": "测试","data":  lists,})

路由设置:

router.LoadHTMLGlob("views/**/*") //渲染模板,一定要/**/*这样代表2层目录

启动服务后,【GIN-debug】显示

gin 渲染不同目录下的模板(支持多层目录)相关推荐

  1. 删除该目录下所有的文件和目录

    题目 删除该目录下所有的文件和目录 分析 可以使用递归来进行删除,每一次调用递归都删除其里边的文件,当递归回调的时候删除那些已经被删空的文件夹 程序代码 package com.company.dem ...

  2. python备份目录下文件夹_Python备份目录及目录下的全部内容的实现方法

    本来是想写一个东西可以直接调用TortoiseSVN保存当前代码到一个分枝下的. 可惜调用SVN的部分还在研究.就先写了目录拷贝的部分. 如果有喜欢研究Python的童鞋愿意提供想法或者建议的话, 这 ...

  3. python查看目录下的文件_Python——查看目录下所有的目录和文件

    原博文 2019-05-06 19:31 − 写程序我们经常会遇到需要遍历某一个目录下的所有文件这个操作,然而python有现成的库,只需要2个循环就可以搞定. 1 import os 2 3 def ...

  4. 删除指定目录下的所有文件包括目录

    public class DelFile{   /**     * 删除指定目录下全部文件和目录     * @param filePath 需删除的文件目录路径     */    public s ...

  5. php新建文件在指定目录下,PHP在获取指定目录下的目录,在获取的目录下面再创建文件,多平台...

    代码如下: //取得指定文件夹的目录名称 function get_dir_name($dir_path,$file) { $dirpath = $dir_path; $dir = scandir($ ...

  6. python导入上级目录下文件_python import 上级目录的导入

    python import 上级目录的导入 有时候我们可能需要import另一个路径下的python文件,例如下面这个目录结构,我们想要在_train.py里import在networks目录下的_l ...

  7. 用Java实现目录复制(包含此目录下的所有文件与目录)

    需求:将指定目录复制到指定路径下. 1.复制时目录内的子目录以及子文件的结构和内容与源目录相同. 2.目录名与源目录名可能相同,也可能不同. 分析: 假设源目录为:D:\dir  目标目录为:E:\c ...

  8. linux系统指令学习(创建目录,在目录下创建一个*.txt,*.txt输入内容,把*.txt文件拷贝到*目录下,把*文件夹目录移动到*目录下)

    linux系统指令学习1 透过12道题熟练掌握20个指令 Linux有150个常用指令,透过12道题去学习以及练习指令 1.创建一个目录/dzqc 提示: windows下的路径样式为c: \dzqc ...

  9. linux循环目录下目录,Shell循环列出目录下所有文件或查找目录下包含指定字符串的文件...

    一.循环列出目录下所有文件 #!/bin/bash function frfile() { local basefolder=$1 echo $basefolder #local filename f ...

  10. php 找目录下txt文件,PHP遍历目录下的TXT文件且按时候排序_后端开发

    遍历目次下的txt文件 示例: //遍历目次下文件要领 function printdir($dir) { $files = array(); //opendir() 翻开目次句柄 if($handl ...

最新文章

  1. 病毒及***防御手册之一
  2. Fitnesse测试系列--如何做成模块Module供调用
  3. 大规模使用 Apache Kafka 的20个最佳实践
  4. 韩国首尔公交车站将被指定为禁烟场所
  5. response.setContentType()的作用及MIME参数详解
  6. Activity-数据状态的保存
  7. QGIS2.18二次开发环境搭建--番外篇
  8. 静态构造函数和静态成员变量初始化的调用时间
  9. 一个wepy开发微信小程序时图片在真机上不显示的问题
  10. 用c++创建xml文件的两种方法
  11. 【golang-GUI开发】struct tags系统(一)
  12. 国外工程师这样分析女人
  13. 如何解决Mac使用向日葵(sunlogin)经常无法打开 connect is error
  14. 在线支付功能实现代码
  15. c++打开挑选图片对话框
  16. 百度地图离线开发V2.0
  17. 微信公众号基本设置服务器设置教程,最新最全的微信公众号开发者模式配置
  18. 前端性能优化之“离线缓存manifest”
  19. 展望十二五:“核高基”突破核心技术走向产业化
  20. 避免 IoT 物联网项目走向失败的 6 大技巧

热门文章

  1. 对PHP中GD库的一些画图函数、及函数参数的学习总结(一)
  2. 华为交换机关闭网口_华为交换机如何关闭端口号
  3. 如何让企业微信的消息在微信里显示?
  4. Windows之——pid为4的system进程占用80端口的解决办法
  5. pillow图像格式转化和缩放操作
  6. 提取Wallpaper engineer里面scene.pkg文件的内容
  7. 怎样用计算机做ppt,电脑怎么做ppt(教你几个小技巧做出高大上的ppt)
  8. python网易公开课官网_[Python][爬虫]网易公开课下载器,支持多线程,可分别下载视频及字幕...
  9. 两个华为路由器实现MESH组网,WIFI信号无缝漫游
  10. 查看你的姓氏排名和姓氏来源