diff --git a/Back-End/Subscriptions/models.py b/Back-End/Subscriptions/models.py
index bb3ac15..749b2c6 100644
--- a/Back-End/Subscriptions/models.py
+++ b/Back-End/Subscriptions/models.py
@@ -54,17 +54,38 @@ class Sibling(models.Model):
return "SIBLING"
def registration_photo_upload_to(instance, filename):
- return f"registration_files/dossier_rf_{instance.pk}/parent/{filename}"
+ """
+ Génère le chemin de stockage pour la photo élève.
+ Structure : Etablissement/dossier_NomEleve_PrenomEleve/filename
+ """
+ register_form = getattr(instance, 'registrationform', None)
+ if register_form and register_form.establishment:
+ est_name = register_form.establishment.name
+ elif instance.associated_class and instance.associated_class.establishment:
+ est_name = instance.associated_class.establishment.name
+ else:
+ est_name = "unknown_establishment"
+
+ student_last = instance.last_name if instance and instance.last_name else "unknown"
+ student_first = instance.first_name if instance and instance.first_name else "unknown"
+ return f"{est_name}/dossier_{student_last}_{student_first}/{filename}"
def registration_bilan_form_upload_to(instance, filename):
- # On récupère le RegistrationForm lié à l'élève
+ """
+ Génère le chemin de stockage pour les bilans de compétences.
+ Structure : Etablissement/dossier_NomEleve_PrenomEleve/filename
+ """
register_form = getattr(instance.student, 'registrationform', None)
- if register_form:
- pk = register_form.pk
+ if register_form and register_form.establishment:
+ est_name = register_form.establishment.name
+ elif instance.student.associated_class and instance.student.associated_class.establishment:
+ est_name = instance.student.associated_class.establishment.name
else:
- # fallback sur l'id de l'élève si pas de registrationform
- pk = instance.student.pk
- return f"registration_files/dossier_rf_{pk}/bilan/{filename}"
+ est_name = "unknown_establishment"
+
+ student_last = instance.student.last_name if instance.student else "unknown"
+ student_first = instance.student.first_name if instance.student else "unknown"
+ return f"{est_name}/dossier_{student_last}_{student_first}/{filename}"
class BilanCompetence(models.Model):
student = models.ForeignKey('Subscriptions.Student', on_delete=models.CASCADE, related_name='bilans')
diff --git a/Back-End/Subscriptions/templates/pdfs/bilan_competences.html b/Back-End/Subscriptions/templates/pdfs/bilan_competences.html
index 529c8c4..7163f5f 100644
--- a/Back-End/Subscriptions/templates/pdfs/bilan_competences.html
+++ b/Back-End/Subscriptions/templates/pdfs/bilan_competences.html
@@ -4,9 +4,22 @@
Bilan de compétences
- Bilan de compétences
+
+
+
+
Bilan de compétences
+
+
-
Élève : {{ student.last_name }} {{ student.first_name }}
-
Niveau : {{ student.level }}
-
Classe : {{ student.class_name }}
-
Période : {{ period }}
-
Date : {{ date }}
+
+
+ | Élève : {{ student.last_name }} {{ student.first_name }} |
+ Date : {{ date }} |
+
+
+ | Niveau : {{ student.level }} |
+ Période : {{ period }} |
+
+
+ | Classe : {{ student.class_name }} |
+ |
+
+
{% for domaine in domaines %}
@@ -72,41 +146,33 @@
{% endfor %}
-
-
-
- Appréciation générale / Commentaire :
-
-
-
-
-
-
-
-
-
-
-
-
- Date :
-
-
-
- Signature :
-
-
+