Antipattern: Use Dual-Purpose Foreign Key
Let’s investigate how using a foreign key to make polymorphic association affects the database.
We'll cover the following
Defining a Polymorphic Association
To make Polymorphic Associations work, we must add an extra string
column alongside the foreign key on issue_id
. The extra column contains the name of the parent table referenced by the current row. In this example, the new column is called issue_type
and contains either Bugs
or FeatureRequests
corresponding to the names of the two possible parent tables in this association.
Get hands-on with 1400+ tech skills courses.