Module: Sinatra::Partial
- Defined in:
- lib/sinatra/partial.rb,
lib/sinatra/partial/version.rb
Constant Summary
- VERSION =
"0.1.1"
Instance Method Summary (collapse)
-
- (Object) partial(template, *args)
support for partials.
Instance Method Details
- (Object) partial(template, *args)
support for partials
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/sinatra/partial.rb', line 11 def partial(template, *args) opts = args.last.is_a?(Hash) ? args.pop : {} # get hash options if they're there opts.merge!(:layout => false) # don't layout, this is a partial if collection = opts.delete(:collection) locals = opts[:locals].nil? ? {} : opts.delete(:locals) collection.inject([]) do |buffer, member| buffer << haml( template, opts.merge(:layout => false, :locals => {template.to_sym => member}.merge(locals) ) ) end.join("\n") else haml(template, opts) end end |