mirror of
https://git.v0id.ovh/n3wt-innov/n3wt-school.git
synced 2026-01-29 07:53:23 +00:00
feat: Configuration et gestion du planning [#2]
This commit is contained in:
@ -181,15 +181,24 @@ class ClasseView(APIView):
|
||||
|
||||
def delete(self, request, _id):
|
||||
classe = bdd.getObject(_objectName=Classe, _columnName='id', _value=_id)
|
||||
if classe != None:
|
||||
if classe is not None:
|
||||
# Supprimer les plannings associés à la classe
|
||||
for planning in classe.plannings.all():
|
||||
print(f'Planning à supprimer : {planning}')
|
||||
planning.delete()
|
||||
|
||||
# Retirer la classe des élèves associés
|
||||
for eleve in classe.eleves.all():
|
||||
print(f'eleve a retirer la classe : {eleve}')
|
||||
print(f'Eleve à retirer de la classe : {eleve}')
|
||||
eleve.classeAssociee = None
|
||||
eleve.save()
|
||||
|
||||
# Supprimer la classe
|
||||
classe.delete()
|
||||
|
||||
|
||||
return JsonResponse("La suppression de la classe a été effectuée avec succès", safe=False)
|
||||
|
||||
|
||||
@method_decorator(csrf_protect, name='dispatch')
|
||||
@method_decorator(ensure_csrf_cookie, name='dispatch')
|
||||
class PlanningsView(APIView):
|
||||
@ -218,8 +227,15 @@ class PlanningView(APIView):
|
||||
return JsonResponse(planning_serializer.errors, safe=False)
|
||||
|
||||
def put(self, request, _id):
|
||||
planning_data=JSONParser().parse(request)
|
||||
planning = bdd.getObject(_objectName=Planning, _columnName='classe__id', _value=_id)
|
||||
planning_data = JSONParser().parse(request)
|
||||
|
||||
try:
|
||||
planning = Planning.objects.get(id=_id)
|
||||
except Planning.DoesNotExist:
|
||||
return JsonResponse({'error': 'No object found'}, status=404)
|
||||
except Planning.MultipleObjectsReturned:
|
||||
return JsonResponse({'error': 'Multiple objects found'}, status=400)
|
||||
|
||||
planning_serializer = PlanningSerializer(planning, data=planning_data)
|
||||
|
||||
if planning_serializer.is_valid():
|
||||
|
||||
Reference in New Issue
Block a user