class Radical::View
Attributes
_layout[RW]
_views_path[RW]
Public Class Methods
layout(name)
click to toggle source
# File lib/radical/view.rb, line 49 def layout(name) @_layout = name end
path(path = nil)
click to toggle source
# File lib/radical/view.rb, line 45 def path(path = nil) @_views_path = path end
render(dir, name, scope, options = {})
click to toggle source
# File lib/radical/view.rb, line 53 def render(dir, name, scope, options = {}) t = template!(dir, name) layout = template('', @_layout || 'layout') unless options[:layout] != false if layout layout.render scope, {} do t.render scope, options[:locals] || {} end else t.render scope end end
template(dir, name)
click to toggle source
# File lib/radical/view.rb, line 37 def template(dir, name) Tilt.new(view_path(dir, name), engine_class: CaptureEngine, escape_html: true) end
template!(dir, name)
click to toggle source
# File lib/radical/view.rb, line 41 def template!(dir, name) Tilt.new(view_path!(dir, name), engine_class: CaptureEngine, escape_html: true) end
view_path(dir, name)
click to toggle source
# File lib/radical/view.rb, line 33 def view_path(dir, name) File.join(@_views_path || '.', 'views', dir, "#{name}.erb") end
view_path!(dir, name)
click to toggle source
# File lib/radical/view.rb, line 25 def view_path!(dir, name) filename = view_path(dir, name) raise "Could not find view file: #{filename}. You need to create it." unless File.exist?(filename) filename end