Documentation ¶
Index ¶
- 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) RegisterHelper(name string, helper interface{})
- func (e *Engine) RegisterHelpers(helpers map[string]interface{})
- 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 Options
- type Renderer
- type RendererFunc
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
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 // contains filtered or unexported fields }
Engine used to power all defined renderers. This allows you to configure the system to your prefered 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. Engines have the following helpers added to them: https://github.com/markbates/buffalo/blob/master/render/helpers/helpers.go#L1 https://github.com/markbates/inflect/blob/master/helpers.go#L3
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) RegisterHelper ¶
RegisterHelper adds a helper to a template with the given name. See github.com/aymerick/raymond for more details on helpers.
e.RegisterHelper("upcase", strings.ToUpper)
func (*Engine) RegisterHelpers ¶
RegisterHelpers adds helpers to a template with the given name. See github.com/aymerick/raymond for more details on helpers.
h := map[string]interface{}{ "upcase": strings.ToUpper, "downcase": strings.ToLower, } e.RegisterHelpers(h)
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/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}}".
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 Options ¶
type Options struct { // HTMLLayout is the default layout to be used with all HTML renders. HTMLLayout string // TemplatesPath is the location of the templates directory on disk. TemplatesPath string // FileResolver will attempt to file a file and return it's bytes, if possible FileResolver resolvers.FileResolver // Helpers to be rendered with the templates Helpers map[string]interface{} // CacheTemplates reduced overheads, but won't reload changed templates. // This should only be set to true in production environments. CacheTemplates bool }
Options for render.Engine
type Renderer ¶
Renderer interface that must be satisified 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/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}}".