View more context

 

nils

Do people clean up their mapping tables manually? I’ve got a query like this:

  1. $simulations = Simulation::get()->filter([
  2. 'OrganisationGroups.ID' => [null, 1, 4]
  3. ]);

works fine, except if there’s an old record in Simulation_OrganisationGroup table pointing to a deleted entry it counts as null which isn’t really desired.

nils
  1. $simulations = Simulation::get()->filter([
  2. 'OrganisationGroups.ID' => [null, 1, 4]
  3. ]);

This query also returns records that have been assigned to a OrganisationGroup that has been deleted, because there’s still a record in the mapping table.

MichalKleiner

how would you end up with a record in the mapping table with null value in the relation column? shouldn’t the ORM take care of this?

nightjarnz

Depends. Unlink, yes. Delete, lolnoareyoucrazy? ¯_(ツ)_/¯

nightjarnz

Please investigate though, the above is a mighty big assumption :)

nightjarnz

It also depends on whether or not you are deleting via the ManyManyList, or the object itself.

nightjarnz

which (if the latter) would also then depend on whether or not the belongs_many_many is defined correctly too, if my assumption is an almighty wad of wrongness.