1. Golang中如何让html/template不转义html标签

    近期在使用Golang的net/httphtml/template开发一个简单的HAProxy负载均衡任务管理系统(见搭建高可用负载均衡组件及缓存DNS一文说明)。

    htmp/template在渲染页面模板的时候默认会转义字符串中的html标签,但有时我们并不想转义html标签,以下图所示为例:

    add_haproxy_balance_task

    list_haproxy_balance_task

    图1中“ip:port列表(一行一个)”和“说明”两个输入框的内容行与行是以\n分隔的;图2中,这两部分内容分别在表格的“后端机器列表”和“说明”两列中展示,但行与行其实是以<br />分隔的;那么在将数据存入数据库之前或从数据库中取出数据后,会将字符串中的\n替换为<br />。如果将替换后的数据以字符串类型传入模板,<br />标签渲染后的效果就是<br />文本而不是换行。

    有两种方式避免html/template转义html标签:

    1. 把字符串类型数据转换成template ...

    Tagged as : Golang template

Page 1 / 1