diff options
author | Zuhao Wan <wanzuhao@gmail.com> | 2014-05-18 16:54:20 +0800 |
---|---|---|
committer | Zuhao Wan <wanzuhao@gmail.com> | 2014-05-20 02:00:57 +0800 |
commit | ac36b45672513417d59ab8960b49ff1f8707d352 (patch) | |
tree | b3cbde2137b05bde5084d7ca23143a13a5584f2d /actionpack/lib | |
parent | dbbcc8388acbcded4ef3a8b17213e3f16a354f32 (diff) | |
download | rails-ac36b45672513417d59ab8960b49ff1f8707d352.tar.gz rails-ac36b45672513417d59ab8960b49ff1f8707d352.tar.bz2 rails-ac36b45672513417d59ab8960b49ff1f8707d352.zip |
Add ActionController::Renderers.remove.
Diffstat (limited to 'actionpack/lib')
-rw-r--r-- | actionpack/lib/action_controller/metal/renderers.rb | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/actionpack/lib/action_controller/metal/renderers.rb b/actionpack/lib/action_controller/metal/renderers.rb index 0443b73953..29ce5abd55 100644 --- a/actionpack/lib/action_controller/metal/renderers.rb +++ b/actionpack/lib/action_controller/metal/renderers.rb @@ -6,6 +6,11 @@ module ActionController Renderers.add(key, &block) end + # See <tt>Renderers.remove</tt> + def self.remove_renderer(key) + Renderers.remove(key) + end + class MissingRenderer < LoadError def initialize(format) super "No renderer defined for format: #{format}" @@ -83,6 +88,17 @@ module ActionController RENDERERS << key.to_sym end + # This method is the opposite of add method. + # + # Usage: + # + # ActionController::Renderers.remove(:csv) + def self.remove(key) + RENDERERS.delete(key.to_sym) + method = "_render_option_#{key}" + remove_method(method) if method_defined?(method) + end + module All extend ActiveSupport::Concern include Renderers |