mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
Merge pull request #7594 from guilleiguaran/rb-template-handler
Add .rb template handler
This commit is contained in:
commit
db17046bc1
4 changed files with 14 additions and 0 deletions
|
@ -1,5 +1,7 @@
|
|||
## Rails 4.0.0 (unreleased) ##
|
||||
|
||||
* Add .rb template handler, this handler simply allows arbitrary Ruby code as a template. *Guillermo Iguaran*
|
||||
|
||||
* Add `separator` option for `ActionView::Helpers::TextHelper#excerpt`:
|
||||
|
||||
excerpt('This is a very beautiful morning', 'very', :separator => ' ', :radius => 1)
|
||||
|
|
|
@ -10,6 +10,7 @@ module ActionView #:nodoc:
|
|||
base.register_default_template_handler :erb, ERB.new
|
||||
base.register_template_handler :builder, Builder.new
|
||||
base.register_template_handler :raw, Raw.new
|
||||
base.register_template_handler :rb, :source.to_proc
|
||||
end
|
||||
|
||||
@@template_handlers = {}
|
||||
|
|
3
actionpack/test/fixtures/ruby_template.rb
vendored
Normal file
3
actionpack/test/fixtures/ruby_template.rb
vendored
Normal file
|
@ -0,0 +1,3 @@
|
|||
body = ""
|
||||
body << ["Hello", "from", "Ruby", "code"].join(" ")
|
||||
body
|
|
@ -97,6 +97,14 @@ module RenderTestCases
|
|||
assert_equal %q;Here are some characters: !@#$%^&*()-="'}{`; + "\n", @view.render(:template => "plain_text_with_characters")
|
||||
end
|
||||
|
||||
def test_render_rb_template_with_handlers
|
||||
assert_equal "Hello from Ruby code", @view.render(:template => "ruby_template")
|
||||
end
|
||||
|
||||
def test_render_rb_template_inline
|
||||
assert_equal '4', @view.render(:inline => "(2**2).to_s", :type => :rb)
|
||||
end
|
||||
|
||||
def test_render_file_with_localization_on_context_level
|
||||
old_locale, @view.locale = @view.locale, :da
|
||||
assert_equal "Hey verden", @view.render(:file => "test/hello_world")
|
||||
|
|
Loading…
Reference in a new issue