簡體   English   中英

如何在HTML模板中不轉義

[英]How to not escape in HTML templates

嘗試呈現HTML模板以通過帶有cid:嵌入式附件通過電子郵件發送。 問題是Go確實在逃避,我什么也做不了。

tplVars := map[string]interface{}{
    "Dog": "cid:dog.png",
    "Cat": "cid:cat.png",
}

我的測試模板看起來更像這樣:

Dog: <img src="{{.Dog}}">
Cat: {{.Cat}}

輸出為:

Dog: <img src="#ZgotmplZ">
Cat: cid:cat.png

如果文本在屬性上下文之外,則可以正確評估它,但是當它是src屬性時,它始終成為該錯誤字符串。 我也嘗試將值從string更改為template.HTMLAttr但是什么也沒有發生。 總是將Cid值評估為該錯誤輸出#ZgotmplZ

問題是src屬性沒有嚴格地視為屬性,而是作為URL。 如果將其從string更改為template.URL它就可以正常工作。

tplVars := map[string]interface{}{
    "Dog": template.URL("cid:dog.png"),
    "Cat": "cid:cat.png",
}

https://play.golang.org/p/ZN27nGnUE9

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM