1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00
rails--rails/activerecord/test/models/interest.rb
Daniel Colson 7f938cacba
Replace test Man with Human
The commit replaces the `Man` model used in tests with a `Human` model. It
also replaces the existing `Human` model with a `SuperHuman` model
inheriting from `Human`.

While this may seem like a cosmetic change, I see it as more of an
inclusivity change. I think it makes sense for a number of reasons:

* Prior to this commit the `Human` model inherited from `Man`. At best
  this makes no sense (it should be the other way around). At worst it
  is offensive and harmful to the community.
* It doesn't seem inclusive to me to have exclusively male-gendered
  examples in the codebase.
* There is no particular reason for these examples to be gendered.
* `man` is hard to grep for, since it also matches `many, manager,
  manual, etc`

For the most part this is a simple search and replace. The one exception
to that is that I had to add the table name to the model so we could use
"humans" instead of "humen".
2020-08-14 11:37:09 -04:00

16 lines
584 B
Ruby

# frozen_string_literal: true
class Interest < ActiveRecord::Base
belongs_to :human, inverse_of: :interests
belongs_to :human_with_callbacks,
class_name: "Human",
foreign_key: :human_id,
inverse_of: :interests_with_callbacks
belongs_to :polymorphic_human, polymorphic: true, inverse_of: :polymorphic_interests
belongs_to :polymorphic_human_with_callbacks,
foreign_key: :polymorphic_human_id,
foreign_type: :polymorphic_human_type,
polymorphic: true,
inverse_of: :polymorphic_interests_with_callbacks
belongs_to :zine, inverse_of: :interests
end