Is there any example of custom handling in serializer. I couldn't figure out how to do that.
On Jun 12, 2017 09:19, "Jani Tiainen" <[email protected]> wrote: > Hi, > > You need to raise validation error (or subclass of it). > > Another option is to move authentication check outside serializer (which > might be right thing to do) > and catch that error properly there (or do custom handling). > > On 12.06.2017 04:57, Sinan Ülker wrote: > > Hello, > > Since serializer.is_valid() does not catch the Exceptions other than the > validationError, how can i raise custom exceptions in validate method and > then catch get them with serializer.errors > > for example: > > class Foo(serializers.Serializer): > def validate(self, data): > raise exceptions.AuthenticationFailed("message") > > #### then I want to test it like this but serializer.is_valid() line always > return error. > serializer = Foo(some.data) > is_valid = serializer.is_valid() > expected_error = {['message.']} > self.assertFalse(is_valid) > self.assertEqual(serializer.errors, expected_error) > > > > I also could not figure out how to handle it with custom exception handler > can you help me about this. I also appreciate if you supply some examples > > > -- > You received this message because you are subscribed to the Google Groups > "Django REST framework" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > For more options, visit https://groups.google.com/d/optout. > > > -- > Jani Tiainen > > -- > You received this message because you are subscribed to a topic in the > Google Groups "Django REST framework" group. > To unsubscribe from this topic, visit https://groups.google.com/d/ > topic/django-rest-framework/8Ai8Vrss0Gg/unsubscribe. > To unsubscribe from this group and all its topics, send an email to > [email protected]. > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "Django REST framework" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
