rails/activemodel/lib
Sean Griffin 1519e976b2 Allow multiparameter assigned attributes to be used with text_field
Between 4.2 and 5.0 the behavior of how multiparameter attributes
interact with `_before_type_cast` changed. In 4.2 it returns the
post-type-cast value. After 5.0, it returns the hash that gets sent to
the type. This behavior is correct, but will cause an issue if you then
tried to render that value in an input like `text_field` or
`hidden_field`.

In this case, we want those fields to use the post-type-cast form,
instead of the `_before_type_cast` (the main reason it uses
`_before_type_cast` at all is to avoid losing data when casting a
non-numeric string to integer).

I've opted to modify `came_from_user?` rather than introduce a new
method for this as I want to avoid complicating that contract further,
and technically the multiparameter hash didn't come from assignment, it
was constructed internally by AR.

Close #27888.
2017-07-17 11:19:15 -04:00
..
active_model Allow multiparameter assigned attributes to be used with text_field 2017-07-17 11:19:15 -04:00
active_model.rb Use frozen string literal in activemodel/ 2017-07-16 20:11:16 +03:00