Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from django.shortcuts import get_object_or_404
- from rest_framework.views import APIView
- from rest_framework.response import Response
- from .models import StudenteCompito
- from rest_framework import serializers
- from rest_framework import fields
- class JSONTextField(fields.CharField):
- def from_native(self, value):
- try:
- value = json.loads(value)
- except ValueError:
- pass
- return super(JSONTextField, self).from_native(value)
- class CompitoStudenteSerializer(serializers.Serializer):
- cache = JSONTextField()
- class Meta:
- model = StudenteCompito
- read_only_fields = ('cache',)
- class Compito(APIView):
- """
- Torna tutti i risultati per singolo studente del compito
- """
- def get(self, request, compito):
- risultati = StudenteCompito.objects.filter(compito=compito).values('cache')
- serializer = CompitoStudenteSerializer(risultati, many=True)
- return Response(serializer.data)
- class CompitoStudente(APIView):
- """
- Torna il risultato del singolo studente del compito
- """
- def get(self, request, compito, studente):
- compito = get_object_or_404(StudenteCompito, compito=compito, studente=studente)
- serializer = CompitoStudenteSerializer(compito)
- return Response(serializer.data)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement