diff --git a/content/docs/rendering/_index.md b/content/docs/rendering/_index.md index e69de29..d3454a6 100644 --- a/content/docs/rendering/_index.md +++ b/content/docs/rendering/_index.md @@ -0,0 +1,40 @@ +--- +linkTitle: Rendering +title: Rendering +weight: 6 +--- + +**go-form** allows you to render a form using Go's built-in template engine. +Here is a simple example that displays a form: + +```golang +http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { + myForm := form.NewForm(...) + + render := theme.NewRenderer(theme.Html5) + tpl, _ := template.New("page").Funcs(render.FuncMap()).Parse(` + + + My form + + + {{ form .Form }} + + + `) + + w.Header().Set("Content-Type", "text/html; charset=utf-8") + + tpl.Execute(w, map[string]any{ + "Form": myForm, + }) +} +``` + +Other helper functions are available to render specific parts of the form: + +- `form_errors`: displays the form's global errors +- `form_row` : renders the label, errors, and widget of a field +- `form_label`: renders only the label of a field +- `form_widget`: renders only the widget of a field +- `form_widget_errors`: renders only the errors of a specific field