API et corbeille
3 pistes possibles
- pas de corbeille
- magie de la restauration
- strict mode
Pas de corbeille
really_destroy!au lieu dedestroy- gestion de la suppression réelle des time_slots via une méthode
really_destroy_timeslots
Cette piste est implémentée par la PR 3685.
Magie de la restauration
quand on crée
- si migration_identifier existe déjà (non supprimé), 422
- si migration_identifier existe déjà (soft-deleted)
- soit on restaure et update
- soit on really_destroy! et on crée
quand on update,
- si migration_identifier existe déjà (supprimé ou non), et que c’est le mauvais objet, 422
- si migration_identifier existe déjà (non supprimé) et que c’est le bon objet, update
- si migration_identifier existe déjà (soft-deleted) et que c’est soft-deleted, restaurer et update
quand on upsert,
- si migration_identifier existe déjà (non supprimé), update
- si migration_identifier existe déjà (soft-deleted) et que c’est soft-deleted, restaurer et update
- si migration_identifier n’existe pas, on crée
Gérer l’unicité des migration_identifier
Gérer la restauration quand on trouve un migration_identifier dans la corbeille
Strict mode
- pas de restauration magique
- Si on crée avec un objet en corbeille avec le même migration_identifier, 422
- Si on update un objet en corbeille avec le même migration_identifier, 422
- Si on upsert avec un objet en corbeille avec le même migration_identifier, 422