def __str__(self):
return self.user.get_full_name()
-def update_balance_signal(sender, instance, *args, **kwargs):
- try:
- if sender is Student or sender:
- instance.update_balance()
- elif sender in (Discount, OptionalFee, Payment, Payback):
- instance.student.update_balance()
- except:
- pass
-
-
-signals.post_save.connect(update_balance_signal)
-signals.post_delete.connect(update_balance_signal)
+# Les signaux pour update_balance sont définis après les modèles Payment, Discount, OptionalFee, Payback
class Profile(models.Model):
verbose_name_plural = _("Paybacks")
+# Signaux pour mettre à jour automatiquement la balance des étudiants
+def update_balance_signal(sender, instance, *args, **kwargs):
+ if sender is Student:
+ instance.update_balance()
+ elif sender in (Discount, OptionalFee, Payment, Payback):
+ instance.student.update_balance()
+
+
+signals.post_save.connect(update_balance_signal)
+signals.post_delete.connect(update_balance_signal)
+
+
class Home(models.Model):
title = models.CharField('Title (interne)', max_length=255,