Documentation ¶
Index ¶
- func GoTemplateEngine(input string, data map[string]interface{}, helpers map[string]interface{}) (string, error)
- type Data
- type Engine
- func (e *Engine) Func(s string, fn RendererFunc) Renderer
- func (e *Engine) HTML(names ...string) Renderer
- func (e *Engine) JSON(v interface{}) Renderer
- func (e *Engine) String(s string) Renderer
- func (e *Engine) Template(c string, names ...string) Renderer
- func (e *Engine) XML(v interface{}) Renderer
- type EventSource
- type Helpers
- type Options
- type Renderer
- type RendererFunc
- type TemplateEngine
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Data ¶
type Data map[string]interface{}
Data type to be provided to the Render function on the Renderer interface.
type Engine ¶
type Engine struct {
Options
}
Engine used to power all defined renderers. This allows you to configure the system to your preferred settings, instead of just getting the defaults.
func New ¶
New render.Engine ready to go with your Options and some defaults we think you might like.
func (*Engine) Func ¶
func (e *Engine) Func(s string, fn RendererFunc) Renderer
Func renderer allows for easily building one of renderers using just a RendererFunc and not having to build a whole implementation of the Render interface.
func (*Engine) HTML ¶
HTML renders the named files using the 'text/html' content type and the github.com/aymerick/raymond package for templating. If more than 1 file is provided the second file will be considered a "layout" file and the first file will be the "content" file which will be placed into the "layout" using "{{yield}}". If no second file is provided and an `HTMLLayout` is specified in the options, then that layout file will be used automatically.
func (*Engine) String ¶
String renderer that will run the string through the github.com/aymerick/raymond package and return "text/plain" as the content type.
func (*Engine) Template ¶
Template renders the named files using the specified content type and the github.com/gobuffalo/plush package for templating. If more than 1 file is provided the second file will be considered a "layout" file and the first file will be the "content" file which will be placed into the "layout" using "{{yield}}".
type EventSource ¶
type EventSource struct {
// contains filtered or unexported fields
}
EventSource is designed to work with JavaScript EventSource objects. see https://developer.mozilla.org/en-US/docs/Web/API/EventSource for more details
func NewEventSource ¶
func NewEventSource(w http.ResponseWriter) (*EventSource, error)
NewEventSource returns a new EventSource instance while ensuring that the http.ResponseWriter is able to handle EventSource messages. It also makes sure to set the proper response heads.
func (*EventSource) CloseNotify ¶
func (es *EventSource) CloseNotify() <-chan bool
CloseNotify return true across the channel when the connection in the browser has been severed.
func (*EventSource) Flush ¶
func (es *EventSource) Flush()
Flush messages down the pipe. If messages aren't flushed they won't be sent.
func (*EventSource) Write ¶
func (es *EventSource) Write(t string, d interface{}) error
type Helpers ¶ added in v0.8.0
type Helpers map[string]interface{}
Helpers to be included in all templates
type Options ¶
type Options struct { // HTMLLayout is the default layout to be used with all HTML renders. HTMLLayout string // TemplatesBox is the location of the templates directory on disk. TemplatesBox packr.Box // Helpers to be rendered with the templates Helpers Helpers // TemplateEngine to be used for rendering HTML templates TemplateEngine TemplateEngine }
Options for render.Engine
type Renderer ¶
Renderer interface that must be satisfied to be used with buffalo.Context.Render
func Func ¶
func Func(s string, fn RendererFunc) Renderer
Func renderer allows for easily building one of renderers using just a RendererFunc and not having to build a whole implementation of the Render interface.
func HTML ¶
HTML renders the named files using the 'text/html' content type and the github.com/aymerick/raymond package for templating. If more than 1 file is provided the second file will be considered a "layout" file and the first file will be the "content" file which will be placed into the "layout" using "{{yield}}".
func JSON ¶
func JSON(v interface{}) Renderer
JSON renders the value using the "application/json" content type.
func String ¶
String renderer that will run the string through the github.com/aymerick/raymond package and return "text/plain" as the content type.
func Template ¶
Template renders the named files using the specified content type and the github.com/gobuffalo/plush package for templating. If more than 1 file is provided the second file will be considered a "layout" file and the first file will be the "content" file which will be placed into the "layout" using "{{yield}}".
type RendererFunc ¶
RendererFunc is the interface for the the function needed by the Func renderer.