module Padrino::Helpers::RenderHelpers
def render(engine, file=nil, options={}, locals=nil, &block)
def render(engine, file=nil, options={}, locals=nil, &block) options.delete(:layout) engine, file = file, engine if file.nil? template_engine = engine ? ::Tilt[engine] : ::Tilt.default_mapping[file] fail "Engine #{engine.inspect} is not registered with Tilt" unless template_engine unless File.file?(file.to_s) engine_extensions = ::Tilt.default_mapping.extensions_for(template_engine) file = Dir.glob("#{file}.{#{engine_extensions.join(',')}}").first || fail("Template '#{file}' not found") end template = template_engine.new(file.to_s, options) template.render(options[:scope] || self, locals, &block) end