class Producer::Core::Template::ERBRenderer

Public Class Methods

render(file_path, variables = {}) click to toggle source
# File lib/producer/core/template/erb_renderer.rb, line 6
def render file_path, variables = {}
  tpl = ERB.new(File.read(file_path), nil, '-')
  tpl.filename = file_path.to_s
  tpl.result build_erb_binding variables
end

Protected Class Methods

build_erb_binding(variables) click to toggle source
# File lib/producer/core/template/erb_renderer.rb, line 14
def build_erb_binding variables
  Object.new.instance_eval do |o|
    variables.each do |k, v|
      o.instance_variable_set "@#{k}", v
    end
    binding
  end
end