title: Django REST - Run field validation from within custom to_internal_value for serializer
body: <p>I am trying to serialize a JSON like this:</p>
  
  <pre><code>{
      "Some URL": "https://helloworld.com/",
      "Some Integer": 12
      "Some Dictionary": {
          "Nested Array": [...]
          "Nested Dictionary": {...}
      }
  }
  </code></pre>
  
  <p>Writing a serializer with fields with spaces is not allowed (of course because of Python variables), so I'm attempting to subclass BaseSerializer.</p>
  
  <pre><code>class MyNestedSerializer(serializers.BaseSerializer):
  
      def to_internal_value(self, data):
          nested_array = data.get('Nested Array')
          nested_dictionary = data.get('Nested Dictionary')
  
          # Validation
          ....
          ....
  
          return {
              'Nested Array': nested_array,
              'Nested Dictionary': nested_dictionary
          }
  
      def to_representation(self, instance):
          return {
              'Nested Array': instance['Nested Array'],
              'Nested Dictionary': instance['Nested Dictionary']
          }
  
  
  class MySerializer(serializers.BaseSerializer):
  
      def to_internal_value(self, data):
          some_url = data.get('Some URL')
          some_integer = data.get('Some Integer')
          some_dictionary = data.get('Some Dictionary')
  
          # Validation
          ....
          nested_serializer = MyNestedSerializer(data=some_dictionary)
          nested_serializer.is_valid(raise_exception=True)
          ....
  
          return {
              'Some URL': some_url,
              'Some Integer': some_integer,
              'Some Dictionary': some_dictionary
          }
  
      def to_representation(self, instance):
          return {
              'Some URL': instance['Some URL']
              'Some Integer': instance['Some Integer']
              'Some Dictionary': instance['Some Dictionary']
          }
  </code></pre>
  
  <p>Now normally, I would define the field type in a serializer (not BaseSerializer) like this:</p>
  
  <pre><code>class BasicSerializer(serializers.Serializer):
      some_integer = serializers.IntegerField(min_value=0)
      some_dictionary = serializers.DictField(child=serializers.CharField())
  </code></pre>
  
  <p>and field validation would occur. What I want is to have these validators run inside my implementation of <code>to_internal_value</code>, instead of writing my own validation. It doesn't make sense to rewrite what has already been written, but I cannot seem to figure out how to run basic validation in my BaseSerializer.</p>