From 87cae430a3c5dd085b68d8ea9c6af07bf2e47fe3 Mon Sep 17 00:00:00 2001 From: Lucas Schumacher Date: Wed, 14 Aug 2024 18:54:19 -0400 Subject: [PATCH] Buffer template output --- views/template.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/views/template.go b/views/template.go index 211e9f2..8b49727 100644 --- a/views/template.go +++ b/views/template.go @@ -1,8 +1,10 @@ package views import ( + "bytes" "fmt" "html/template" + "io" "io/fs" "log" "net/http" @@ -29,12 +31,14 @@ func (t Template) Execute(w http.ResponseWriter, r *http.Request, data interface }) w.Header().Set("Content-Type", "text/html; charset=utf8") - err = tpl.Execute(w, data) + var buf bytes.Buffer + err = tpl.Execute(&buf, data) if err != nil { log.Printf("Error executing template: %v", err) http.Error(w, "Internal Server Error", http.StatusInternalServerError) return } + io.Copy(w, &buf) } func (t Template) TestTemplate(data interface{}) error { var testWriter strings.Builder