title: DRF @property field serializer Got AttributeError when attempting to get a value for field X on serializer Y
body: <p>I'm using django rest framework for serialize and update a @property field, but i'm getting the error:</p>
  
  <pre><code>AttributeError: Got AttributeError when attempting to get a value for field `template` on serializer `PublicationSerializer`.
  The serializer field might be named incorrectly and not match any attribute or key on the `Publication` instance.
  Original exception text was: 'NoneType' object has no attribute 'template'.
  </code></pre>
  
  <p>i have the following models:</p>
  
  <pre><code>class Publication(models.Model):
      @property
      def template(self):
          return self.apps.first().template
  
  class App(models.Model):
      publication = models.ForeignKey(Publication, related_name='apps')
      template = models.ForeignKey(Template, blank=True, null=True)
  
  class Template(models.Model):
      name = models.CharField(_('Public name'), max_length=255, db_column='nome')
  </code></pre>
  
  <p>and the following serializer:</p>
  
  <pre><code>class PublicationSerializer(serializers.ModelSerializer):
      template = TemplateSerializer(read_only=False)
  
      class Meta:
          model = models.Publication
          fields = ('template',)
  
      def update(self, instance, validated_data):
          template_data = validated_data.pop('template', None)
          instance = super().update(instance, validated_data)
          if template_data:
              instance.apps.all().update(template__id=template_data['id'])
          return instance
  </code></pre>
  
  <p>This error happens when i use GET method to view and my Publication.apps is empty, and when i try to use POST method, i receive an empty <code>OrderedDict()</code> object.</p>
  
  <p>This looks like when my field is null the DRF can't discover field type, and when my i try to POST the serializer isn't working as well...</p>