diff options
author | Rob Looby <robertjlooby@gmail.com> | 2015-05-01 13:57:05 -0500 |
---|---|---|
committer | Rob Looby <robertjlooby@gmail.com> | 2015-05-01 13:57:05 -0500 |
commit | 78c4e30c6df04be7148b36916455792b727cd55b (patch) | |
tree | 4618b0c88cbd882fe524540edc85e44f16582e64 /guides | |
parent | 2e7fd4a8661960434ccaad71c8afb4ef26281d21 (diff) | |
download | rails-78c4e30c6df04be7148b36916455792b727cd55b.tar.gz rails-78c4e30c6df04be7148b36916455792b727cd55b.tar.bz2 rails-78c4e30c6df04be7148b36916455792b727cd55b.zip |
add upgrade note for breaking habtm change in 3.2 -> 4.0
The has_and_belongs_to_many default join_table behavior changed
between Rails 3.2 and Rails 4.0 and should be noted in the
appropriate section of the upgrade guide.
commit:
https://github.com/rails/rails/commit/46492949b8c09f99db78b9f7a02d039e7bc6a702
Diffstat (limited to 'guides')
-rw-r--r-- | guides/source/upgrading_ruby_on_rails.md | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/guides/source/upgrading_ruby_on_rails.md b/guides/source/upgrading_ruby_on_rails.md index 0aa2152d56..be7d2a3635 100644 --- a/guides/source/upgrading_ruby_on_rails.md +++ b/guides/source/upgrading_ruby_on_rails.md @@ -883,6 +883,18 @@ this gem such as `whitelist_attributes` or `mass_assignment_sanitizer` options. * To re-enable the old finders, you can use the [activerecord-deprecated_finders gem](https://github.com/rails/activerecord-deprecated_finders). +* Rails 4.0 has changed to default join table for `has_and_belongs_to_many` relations to strip the common prefix off the second table name. Any existing `has_and_belongs_to_many` relationship between models with a common prefix must be specified with the `join_table` option. For example: + +```ruby +CatalogCategory < ActiveRecord::Base + has_and_belongs_to_many :catalog_products, join_table: 'catalog_categories_catalog_products' +end + +CatalogProduct < ActiveRecord::Base + has_and_belongs_to_many :catalog_categories, join_table: 'catalog_categories_catalog_products' +end +``` + ### Active Resource Rails 4.0 extracted Active Resource to its own gem. If you still need the feature you can add the [Active Resource gem](https://github.com/rails/activeresource) in your Gemfile. |