title: Django RestFramework - Optional Nested serializer ID on POST, Detail on GET?
body: <p>I've encountered the following problem. Lets say I have a simple Profile Serializer and that is used as a nested <code>serializer</code> within the DevelopmentPLanItemSerializer, like so:</p>
  
  <pre><code>class SimpleProfileSerializer(serializers.ModelSerializer):
      profile_image = serializers.SerializerMethodField()
  
      class Meta:
          model = um.Profile
          fields = ('id', 'name', 'profile_image')
  
      def profile_image(self, obj):
          return obj.profile_image_url
  
  
  
  class DevelopmentPlanItemSerializer(serializers.ModelSerializer):
      id = serializers.ModelField(
          model_field=dp.DevelopmentPlanItem()._meta.get_field('id'),
          required=False,
          allow_null=True
      )
      name = serializers.CharField(required=False, allow_null=True)        
      profile = SimpleProfileSerializer(required=False, allow_null=True)
  
      class Meta:
          model = dp.DevelopmentPlanItem
          fields = ('id', 'title', 'name', 'profile')
  </code></pre>
  
  <p>Now, I've market the 'profile' field with <code>required=False, allow_null=True</code> as this field is optional. However, when I save I still get an error because the fields within the SimpleProfileSerializer are not allowed to be empty. I could solve this by removing the nested serializer, so that I only POST / GET an Profile.id on the DevelopmentPlanItemSerialzer.profile field, but we really want the additional info from this field, not just the ID. </p>
  
  <p>Is there a way to accomplish this? Where we, for example, supply only a Profile.PK on POST and get the entire nested serialized info on a GET request?</p>