Showing
2 changed files
with
9 additions
and
29 deletions
@@ -8,7 +8,6 @@ from .models import Edicto, Precio | @@ -8,7 +8,6 @@ from .models import Edicto, Precio | ||
8 | from .serializer import EdictoSerializer, PrecioSerializer | 8 | from .serializer import EdictoSerializer, PrecioSerializer |
9 | from .filters import EdictoFilter, PrecioFilter | 9 | from .filters import EdictoFilter, PrecioFilter |
10 | from .permissions import IsAdminOrAuthorized | 10 | from .permissions import IsAdminOrAuthorized |
11 | -from .utils import contador | ||
12 | 11 | ||
13 | 12 | ||
14 | class EdictoViewSet(mixins.CreateModelMixin, | 13 | class EdictoViewSet(mixins.CreateModelMixin, |
@@ -26,30 +25,6 @@ class EdictoViewSet(mixins.CreateModelMixin, | @@ -26,30 +25,6 @@ class EdictoViewSet(mixins.CreateModelMixin, | ||
26 | ordering = ('fecha_publicacion',) | 25 | ordering = ('fecha_publicacion',) |
27 | lookup_field = 'uuid' | 26 | lookup_field = 'uuid' |
28 | 27 | ||
29 | - def perform_create(self, serializer): | ||
30 | - edicto = self.request.data.get('cuerpo_edicto') | ||
31 | - cantidad_palabras = contador(edicto) | ||
32 | - usuario = self.request.user | ||
33 | - serializer.save(cantidad_palabras=cantidad_palabras, | ||
34 | - usuario=usuario, | ||
35 | - usuario_movimiento=usuario, | ||
36 | - ) | ||
37 | - | ||
38 | - def partial_update(self, request, *args, **kwargs): | ||
39 | - instance = self.get_object() | ||
40 | - serializer = self.get_serializer(instance, data=request.data, partial=True) | ||
41 | - serializer.is_valid(raise_exception=True) | ||
42 | - | ||
43 | - edicto = request.data.get('cuerpo_edicto') | ||
44 | - cantidad_palabras = contador(edicto) | ||
45 | - usuario = self.request.user | ||
46 | - | ||
47 | - serializer.save(cantidad_palabras=cantidad_palabras, | ||
48 | - usuario_movimiento=usuario, | ||
49 | - ) | ||
50 | - | ||
51 | - return Response(serializer.data, status=status.HTTP_200_OK) | ||
52 | - | ||
53 | 28 | ||
54 | class PrecioViewSet(viewsets.ReadOnlyModelViewSet): | 29 | class PrecioViewSet(viewsets.ReadOnlyModelViewSet): |
55 | serializer_class = PrecioSerializer | 30 | serializer_class = PrecioSerializer |
@@ -5,6 +5,7 @@ from .constants import EXTENSIONES_VALIDAS | @@ -5,6 +5,7 @@ from .constants import EXTENSIONES_VALIDAS | ||
5 | 5 | ||
6 | from .models import Edicto, Precio | 6 | from .models import Edicto, Precio |
7 | from usuario.serializers import UsuarioListaSerializer | 7 | from usuario.serializers import UsuarioListaSerializer |
8 | +from .utils import contador | ||
8 | 9 | ||
9 | 10 | ||
10 | class EdictoSerializer(serializers.ModelSerializer): | 11 | class EdictoSerializer(serializers.ModelSerializer): |
@@ -30,10 +31,6 @@ class EdictoSerializer(serializers.ModelSerializer): | @@ -30,10 +31,6 @@ class EdictoSerializer(serializers.ModelSerializer): | ||
30 | 'fecha_modificacion' | 31 | 'fecha_modificacion' |
31 | 32 | ||
32 | ) | 33 | ) |
33 | - extra_kwargs = { | ||
34 | - 'archivo': {'read_only': True}, | ||
35 | - 'cantidad_palabras': {'read_only': True} | ||
36 | - } | ||
37 | 34 | ||
38 | read_only_fields = ('usuario', 'usuario_movimiento', | 35 | read_only_fields = ('usuario', 'usuario_movimiento', |
39 | 'fecha_publicacion', 'cantidad_palabras', | 36 | 'fecha_publicacion', 'cantidad_palabras', |
@@ -41,6 +38,14 @@ class EdictoSerializer(serializers.ModelSerializer): | @@ -41,6 +38,14 @@ class EdictoSerializer(serializers.ModelSerializer): | ||
41 | 'fecha_modificacion', | 38 | 'fecha_modificacion', |
42 | ) | 39 | ) |
43 | 40 | ||
41 | + def validate(self, data): | ||
42 | + edicto = data.get('cuerpo_edicto', '') | ||
43 | + cantidad_palabras = contador(edicto) | ||
44 | + data['cantidad_palabras'] = cantidad_palabras | ||
45 | + data['usuario'] = self.context['request'].user | ||
46 | + data['usuario_movimiento'] = self.context['request'].user | ||
47 | + return data | ||
48 | + | ||
44 | @staticmethod | 49 | @staticmethod |
45 | def validate_archivo(value): | 50 | def validate_archivo(value): |
46 | filename, extension = value.name.rsplit(".", 1) | 51 | filename, extension = value.name.rsplit(".", 1) |
-
Please register or login to post a comment