[pyar] [django] Rest framework

Diego Fejgelis diegofej en gmail.com
Jue Mayo 14 18:32:42 ART 2015


Podes hacer un validate_cuit(), de una manera muy parecida a "clean_" en un
form. [1]

class ClienteSerializer(serializers.ModelSerializer):
    class Meta:
        model = Cliente
        fields = ('id', 'razon_social', 'cond_iva', 'direccion', 'ciudad',
'cuit')

    def validate_cuit(self, value):
        """
        Check valid CUIT
        """
        if cuit_valid(value):
            raise serializers.ValidationError("Invalid CUIT")
        return value

** Código sin probar

[1] http://www.django-rest-framework.org/api-guide/serializers/#validation

2015-05-14 18:28 GMT-03:00 Daniel <dmlistapython en gmail.com>:

> Hola Gente,
>
> tengo este serializador:
>
> class ClienteSerializer(serializers.ModelSerializer):
>     class Meta:
>         model = Cliente
>         fields = ('id', 'razon_social', 'cond_iva', 'direccion', 'ciudad',
> 'cuit')
>
>
> resulta que el cuit (que sea válido) lo evalúo a nivel modelo, si envio un
> cuit invalido me genera una excepción.
>
> El problema es que la API me devuelve un error 500 con el error,
> ¿como capturo ese error desde el serializador y lo devuelvo como un 400
> con un mensaje elegante?
>
>
>
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20150514/a8c7bc1d/attachment.html>


More information about the pyar mailing list