AgileVentures / MetPlus_tracker

Git Repository for the Waffle issue in MetPlus project
2 stars 4 forks source link

Address delete bug #722

Open patmbolger opened 6 years ago

patmbolger commented 6 years ago

This exception occurred in production:

ERROR: update or delete on table "addresses" violates foreign key constraint "fk_rails_c3132b644e" on table "jobs" DETAIL: Key (id)=(2) is still referenced from table "jobs". : DELETE FROM "addresses" WHERE "addresses"."id" = $1

So, an address associated with one or more jobs is being destroyed, and the model associations do not allow for that.

Possible fix - add the following association to the Address model:

has_many :jobs, dependent: :nullify

Note: the above fixes the address destroy problem in the rails console - that is, destroying an address that is associated with one or more jobs does not raise an exception, and does set the address_id (foreign key in "jobs" table) to nil, as the association statement specifies. However, I have not run all tests so confirm that this does not break anything else.

joaopapereira commented 6 years ago

@patmbolger I tried your suggestion, but I keep getting the same error

patmbolger commented 6 years ago

@joaopapereira - how can I duplicate the error?