1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00
rails--rails/actionview/CHANGELOG.md
Steven Harman 87899cfcf0 Use to_a to pre-buffer the collection
We can safely assume we're not dealing with an infinite collection as
we're about to call `each` on it and collect the results until it
terminates on its own. Given that, `to_a` is implemented by the normal
Array-like objects, and less Array-like objects like `Enumerator` and
`Enumerator::Lazy`.
2016-07-26 11:33:34 -04:00

2.5 KiB

  • Changed partial rendering with a collection to allow collections which implement to_a.

    Extracting the collection option had an optimization to avoid unnecessary queries of ActiveRecord Relations by calling #to_ary on the given collection. Instances of Enumerator or Enumerable are valid collections, but they do not implement #to_ary. By changing this to #to_a, they will now be extracted and rendered as expected.

    Steven Harman

  • New syntax for tag helpers. Avoid positional parameters and support HTML5 by default. Example usage of tag helpers before:

    tag(:br, nil, true)
    content_tag(:div, content_tag(:p, "Hello world!"), class: "strong")
    
    <%= content_tag :div, class: "strong" do -%>
      Hello world!
    <% end -%>
    

    Example usage of tag helpers after:

    tag.br
    tag.div tag.p("Hello world!"), class: "strong"
    
    <%= tag.div class: "strong" do %>
      Hello world!
    <% end %>
    

    Marek Kirejczyk, Kasper Timm Hansen

  • Change datetime_field and datetime_field_tag to generate datetime-local fields.

    As a new specification of the HTML 5 the text field type datetime will no longer exist and it is recomended to use datetime-local. Ref: https://html.spec.whatwg.org/multipage/forms.html#local-date-and-time-state-(type=datetime-local)

    Herminio Torres

  • Raw template handler (which is also the default template handler in Rails 5) now outputs HTML-safe strings.

    In Rails 5 the default template handler was changed to the raw template handler. Because the ERB template handler escaped strings by default this broke some applications that expected plain JS or HTML files to be rendered unescaped. This fixes the issue caused by changing the default handler by changing the Raw template handler to output HTML-safe strings.

    Eileen M. Uchitelle

  • select_tag's include_blank option for generation for blank option tag, now adds an empty space label, when the value as well as content for option tag are empty, so that we conform with html specification. Ref: https://www.w3.org/TR/html5/forms.html#the-option-element.

    Generation of option before:

    <option value=""></option>
    

    Generation of option after:

    <option value="" label=" "></option>
    

    Vipul A M

Please check 5-0-stable for previous changes.