Module: Wunderbar::Template::Json

Defined in:
lib/wunderbar/sinatra.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.extObject



127
# File 'lib/wunderbar/sinatra.rb', line 127

def self.ext; :_json; end

.mimeObject



128
# File 'lib/wunderbar/sinatra.rb', line 128

def self.mime; 'application/json'; end

Instance Method Details

#evaluate(scope, locals, &block) ⇒ Object



130
131
132
133
134
135
136
137
138
139
140
# File 'lib/wunderbar/sinatra.rb', line 130

def evaluate(scope, locals, &block)
  builder = JsonBuilder.new(scope)
  begin
    _evaluate_safely(builder, scope, locals, &block)
  rescue Exception => exception
    scope.content_type self.class.default_mime_type, :charset => 'utf-8'
    scope.response.status = 500
    builder._exception exception
  end
  builder.target!
end