Rails 2.3 and 3.2 LTS use ActionDispatch::Http::ParamsHashWithIndifferentAccess
to represent params hashes, similar to Rails 5's ActionController::Parameters
.
If you serialize data in Rails LTS, then upgrade to other Rails versions (such as Rails 5) and then try to deserialize the data, you might run into an error
uninitialized constant ActionDispatch::Http::ParamsHashWithIndifferentAccess
or
undefined class/module ActionDispatch::Http::ParamsHashWithIndifferentAccess
To fix this, add the following line to an initializer in your Rails 5 app:
ActionDispatch::Http::ParamsHashWithIndifferentAccess = ActionController::Parameters
You can do this either temporarily in order to migrate all serialized data once, or keep it permanently.
Rails 4.2 LTS already does this for you (starting with Rails 4.2.11.11 LTS).
Posted by Tobias Kraze to Rails LTS documentation (2018-11-16 09:47)