diff options
| author | BrickXu | 2014-12-05 14:50:53 +0800 | 
|---|---|---|
| committer | xulei | 2014-12-05 14:51:39 +0800 | 
| commit | d68c61450440a522b08b64fdd21028cc739e6ead (patch) | |
| tree | dda22038a03f21e2fd9d2828533db6d8914bd621 /rest_framework/serializers.py | |
| parent | 4042180392fb7809d1c8d2f6ca0bc6e18c114e6c (diff) | |
| download | django-rest-framework-d68c61450440a522b08b64fdd21028cc739e6ead.tar.bz2 | |
Add validation for fields & exclude type.
Diffstat (limited to 'rest_framework/serializers.py')
| -rw-r--r-- | rest_framework/serializers.py | 6 | 
1 files changed, 6 insertions, 0 deletions
| diff --git a/rest_framework/serializers.py b/rest_framework/serializers.py index af8aeb48..96cd51e3 100644 --- a/rest_framework/serializers.py +++ b/rest_framework/serializers.py @@ -759,6 +759,12 @@ class ModelSerializer(Serializer):          depth = getattr(self.Meta, 'depth', 0)          extra_kwargs = getattr(self.Meta, 'extra_kwargs', {}) +        if fields and not isinstance(fields, (list, tuple)): +            raise TypeError('`fields` must be a list or tuple') + +        if exclude and not isinstance(exclude, (list, tuple)): +            raise TypeError('`exclude` must be a list or tuple') +          assert not (fields and exclude), "Cannot set both 'fields' and 'exclude'."          extra_kwargs = self._include_additional_options(extra_kwargs) | 
