Module: BabyErubis::Renderer
- Defined in:
- lib/baby_erubis/renderer.rb
Overview
Module to define template rendering methods.
ex:
class MyController
include BabyErubis::HtmlEscaper
include BabyErubis::Renderer
ERUBY_PATH = ['.', 'templates']
ERUBY_LAYOUT = :_layout
ERUBY_HTML = BabyErubis::Html
ERUBY_HTML_EXT = '.html.eruby'
ERUBY_TEXT = BabyErubis::Text
ERUBY_TEXT_EXT = '.eruby'
ERUBY_CACHE = {}
def index
@items = ['A', 'B', 'C']
## renders 'templates/welcome.html.eruby'
html = eruby_render_html(:welcome)
return html
end
end
Constant Summary collapse
- ERUBY_PATH =
['.']
- ERUBY_LAYOUT =
:_layout
- ERUBY_HTML =
BabyErubis::Html
- ERUBY_HTML_EXT =
'.html.eruby'
- ERUBY_TEXT =
BabyErubis::Text
- ERUBY_TEXT_EXT =
'.eruby'
- ERUBY_CACHE =
{}
Instance Method Summary collapse
- #eruby_render_html(template_name, layout: true, encoding: 'utf-8') ⇒ Object
- #eruby_render_text(template_name, layout: false, encoding: 'utf-8') ⇒ Object
Instance Method Details
#eruby_render_html(template_name, layout: true, encoding: 'utf-8') ⇒ Object
48 49 50 51 52 53 54 55 56 |
# File 'lib/baby_erubis/renderer.rb', line 48 def eruby_render_html(template_name, layout: true, encoding: 'utf-8') return _eruby_render_template(template_name, layout) {|tmpl_name| ext = self.class.const_get :ERUBY_HTML_EXT _eruby_find_template("#{tmpl_name}#{ext}") {|fpath| tmpl_class = self.class.const_get :ERUBY_HTML tmpl_class.new.from_file(fpath, encoding) } } end |
#eruby_render_text(template_name, layout: false, encoding: 'utf-8') ⇒ Object
58 59 60 61 62 63 64 65 66 |
# File 'lib/baby_erubis/renderer.rb', line 58 def eruby_render_text(template_name, layout: false, encoding: 'utf-8') return _eruby_render_template(template_name, layout) {|tmpl_name| ext = self.class.const_get :ERUBY_TEXT_EXT _eruby_find_template("#{tmpl_name}#{ext}") {|fpath| tmpl_class = self.class.const_get :ERUBY_TEXT tmpl_class.new.from_file(fpath, encoding) } } end |