aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_controller
diff options
context:
space:
mode:
Diffstat (limited to 'actionpack/lib/action_controller')
-rw-r--r--actionpack/lib/action_controller/base.rb1
-rw-r--r--actionpack/lib/action_controller/metal/rendering.rb18
2 files changed, 19 insertions, 0 deletions
diff --git a/actionpack/lib/action_controller/base.rb b/actionpack/lib/action_controller/base.rb
index 3fd5fb90d2..9941c06201 100644
--- a/actionpack/lib/action_controller/base.rb
+++ b/actionpack/lib/action_controller/base.rb
@@ -14,6 +14,7 @@ module ActionController
#
metal = Class.new(Metal) do
include AbstractController::Rendering
+ include ActionController::BasicRendering
end
# Action Controllers are the core of a web request in \Rails. They are made up of one or more actions that are executed
diff --git a/actionpack/lib/action_controller/metal/rendering.rb b/actionpack/lib/action_controller/metal/rendering.rb
index abcc9d4acf..2d58e1440c 100644
--- a/actionpack/lib/action_controller/metal/rendering.rb
+++ b/actionpack/lib/action_controller/metal/rendering.rb
@@ -1,4 +1,22 @@
module ActionController
+ module BasicRendering
+ extend ActiveSupport::Concern
+
+ # Render template to response_body
+ # :api: public
+ def render(*args, &block)
+ super(*args, &block)
+ text = args.first[:text]
+ if text.present?
+ self.response_body = text
+ end
+ end
+
+ def rendered_format
+ Mime::TEXT
+ end
+ end
+
module Rendering
extend ActiveSupport::Concern