Files
Tola Leng f5a985ff1e add new functionality and improve backend server structure
- Enhance server functionality and optimize backend code
- Add multi-database support (PostgreSQL, MySQL, SQLite)
2026-03-09 17:36:42 +07:00

34 lines
624 B
Go

package template
import (
"bytes"
"errors"
"html/template"
)
// Renderer defines a single parsed template.
type Renderer struct {
template *template.Template
parseError error
}
// Render executes the template with the specified data as the dot object
// and returns the result as plain string.
func (r *Renderer) Render(data any) (string, error) {
if r.parseError != nil {
return "", r.parseError
}
if r.template == nil {
return "", errors.New("invalid or nil template")
}
buf := new(bytes.Buffer)
if err := r.template.Execute(buf, data); err != nil {
return "", err
}
return buf.String(), nil
}