Module: JsendWrapper::Rails
- Defined in:
- lib/jsend_wrapper/rails/railtie.rb,
lib/jsend_wrapper/rails/template_handler.rb
Defined Under Namespace
Classes: Railtie, TemplateHandler
Class Method Summary collapse
-
.install_render_option ⇒ Object
Adds the “jsend:” option to ActiveController::Base#render.
-
.install_template_handler ⇒ Object
Install a “template handler” for .jsend view files.
-
.jbuilder_available? ⇒ Boolean
True if the Jbuilder gem is available.
Class Method Details
.install_render_option ⇒ Object
Adds the “jsend:” option to ActiveController::Base#render
51 52 53 54 55 56 57 58 |
# File 'lib/jsend_wrapper/rails/railtie.rb', line 51 def self.install_render_option require 'jsend_wrapper/rails/render_option' ActionController::Renderers.add :jsend do |value, _| self.content_type ||= Mime::JSON RenderOption.new(value).render end end |
.install_template_handler ⇒ Object
Install a “template handler” for .jsend view files. These files will be processed with Jbuilder, just like .jbuilder view files, but the result will be wrapped in a “success” JSend wrapper.
42 43 44 45 46 47 |
# File 'lib/jsend_wrapper/rails/railtie.rb', line 42 def self.install_template_handler require 'jsend_wrapper/rails/template_handler' ActionView::Template.register_template_handler \ :jsend, JsendWrapper::Rails::TemplateHandler end |
.jbuilder_available? ⇒ Boolean
Returns true if the Jbuilder gem is available.
31 32 33 34 35 36 37 |
# File 'lib/jsend_wrapper/rails/railtie.rb', line 31 def self.jbuilder_available? require 'jbuilder' true rescue LoadError $stderr.puts 'WARN: Please include the "jbuilder" gem for .jsend templates' false end |