# 第 04 课:高级模板用法 在上一节课中,我们学习了标准库中 [`text/template`](https://gowalker.org/text/template) 包提供的文本模板引擎的逻辑控制、集合对象迭代和空白符号处理的用法。这节课,我们将学习标准库模板引擎中的一些高级概念和使用方法,并将渲染结果转换为 HTML。 ## 模板中的作用域 和程序代码中的作用域相似,在 [`text/template`](https://gowalker.org/text/templ...
-
第 04 课:高级模板用法
-
第 03 课:进阶模板用法
在上一节课中,我们学习了标准库中 [`text/template`](https://gowalker.org/text/template) 包提供的文本模板引擎的基础用法,了解了模板渲染和根对象的概念。这节课,我们将基于上节课的知识,进一步学习如何在 Go 语言提供的模板引擎中进行条件判断和更加复杂的逻辑操作。 ## 在模板中定义变量 变量不仅是 Go 语言中程序代码的重要组成部分,同样也是模板引擎中的主要元素。因为只有通过定义和操作变量,才能使得模板引擎在逻辑和用法上更加灵活和...
-
第 02 课:基础模板用法
在上一节课中,我们学习了如何使用 Go 语言编写 HTTP 服务器的 N 种写法。但是,总是响应固定的字符串对用户和开发者而言都会显得非常无趣。因此,这堂课我们来学习如何使用 Go 语言标准库的 [`text/template`](https://gowalker.org/text/template) 包来向客户端(即浏览器或终端)响应动态的内容。 ## 初识文本模板引擎 标准库中的 [`text/template`](https://gowalker.org/text/templa...
-
第 01 课:初窥 HTTP 服务器
想要学习 Go 语言的 Web 开发,就必须知道如何在 Go 语言中启动一个 HTTP 服务器用于接受和响应来自客户端的 HTTP 请求。虽然 Web 应用协议不止于 HTTP(HyperText Transfer Protocol),还包括常见的 Socket、WebSocket 和 SPDY 等等,但 HTTP 是当下最简单和最常见的交互形式。与其它语言所不同的是,Go 语言的标准库自带了一系列结构和方法来帮助开发者简化 HTTP 服务开发的相关流程。因此,我们不需要依赖任何第三方组件就能构...
-
开篇词:知其然知其所以然,以理解为驱动的学习
大家好,我是无闻,咱们又见面了。很多人会通过我的 GitHub 用户名 @unknwon 了解到我。作为一个 Go 语言爱好者和开源作者,我在 GitHub 上发布了许多 Go 语言相关的开源项目,其中不乏与 Web 开发相关的,包括 Macaron Web 框架和 Gogs 项目。在 2013 年,我通过 GitHub 发布了一套使用 Go 语言进行 Web 开发的视频教程《Go Web 基础》,许多同学在学习完成之后觉得不够过瘾,认为只是学到了某一个 Web 框架的具体用法,而不是真正地从 ...