Project

General

Profile

Anomalie #680

Galette v0.7.5. Impossible de détruire la fiche d'un membre spécifique (foreign key).

Added by Roland Telle about 6 years ago. Updated almost 6 years ago.

Status:
Fermé
Priority:
Normal
Category:
Core
Target version:
Start date:
08/19/2013
Due date:
% Done:

100%

Estimated time:
Version utilisée:
Vote:

Description

Dans la page "Gestion des membres", il existe deux manières de supprimer une fiche :
  1. en cliquant le bouton placé dans la colonne "Actions", ce qui affiche le message d'avertissement suivant :
    Voulez vous vraiment effacer cet adhérent de la base ? Cela effacera l'historique de ses contributions.
    Pour éviter cela vous pouvez simplement désactiver son compte. Voulez vous toujours effacer cet adhérent ?
  2. en sélectionnant la fiche et en cliquant le bouton "Supprimer", ce qui affiche le message d'avertissement suivant (différent et c'est normal) :
    Voulez vous réellement effacer tous les comptes sélectionnés (ainsi que toutes les contributions associées) ?

mais dans les deux cas, la destruction d'un membre spécifique est impossible. Les logs indiquent :

Unable to delete selected member(s) |SQLSTATE[23000]: Integrity constraint violation: 1451 Cannot delete or update a parent row: a foreign key constraint fails (`xxxxxx`.`galette_mailing_history`, CONSTRAINT `galette_mailing_history_ibfk_1` FOREIGN KEY (`mailing_sender`) REFERENCES `galette_adherents` (`id_adh`))

Associated revisions

Revision 475bbbd3 (diff)
Added by Johan Cwiklinski almost 6 years ago

No error was displayed on remove member error

Display a specific message if member still hae dependencies (on mailings for example); fixes #680

History

#1

Updated by Johan Cwiklinski about 6 years ago

Ce membre a envoyé un mailing.

L'erreur n'est pas très parlante, mais dans le cas présent, la suppression en cascade n'est à mon avis pas souhaitable ; le mailing doit être supprimé auparavant.

#2

Updated by Roland Telle about 6 years ago

Johan Cwiklinski a écrit :

Ce membre a envoyé un mailing.

C'est la raison pour laquelle je parlais de "membre spécifique" (pas très français mais je n'étais pas inspiré sur ce coup-là) ;-)

L'erreur n'est pas très parlante,

Certes mais l'effet est là : suppression impossible.

mais dans le cas présent, la suppression en cascade n'est à mon avis pas souhaitable ;

Je veux bien le croire ...

le mailing doit être supprimé auparavant.

C'est une solution radicale à laquelle un tiers ne pensera peut-être pas spontanément. Je suggère - si la suppression en cascade n'est pas envisageable - qu'un message d'alerte recommande deux solutions au choix :
  • soit détruire au préalable le(s) mailing(s) dont ce membre était l'auteur,
  • soit classer ce membre parmi les inactifs.

Mais faut faire quelque chose, pensé-je :-)

#3

Updated by Johan Cwiklinski about 6 years ago

  • Assignee set to Johan Cwiklinski
  • Category set to Core

Roland Telle a écrit :

C'est la raison pour laquelle je parlais de "membre spécifique" (pas très français mais je n'étais pas inspiré sur ce coup-là) ;-)

Nous sommes d'accord :D

C'est une solution radicale à laquelle un tiers ne pensera peut-être pas spontanément. Je suggère - si la suppression en cascade n'est pas envisageable - qu'un message d'alerte recommande deux solutions au choix :
  • soit détruire au préalable le(s) mailing(s) dont ce membre était l'auteur,
  • soit classer ce membre parmi les inactifs.

Mais faut faire quelque chose, pensé-je :-)

Nous sommes d'accord ;)

#4

Updated by Johan Cwiklinski almost 6 years ago

  • Status changed from Nouveau to Résolu
  • % Done changed from 0 to 100
#5

Updated by Johan Cwiklinski almost 6 years ago

  • Target version set to 0.7.6
#6

Updated by Johan Cwiklinski almost 6 years ago

  • Status changed from Résolu to Fermé

Also available in: Atom PDF