title: django - "Incorrect type. Expected pk value, received str" error
body: <p>I my django-rest-framework I have the following models:</p>
  
  <p>Basically every ride has one final destination and can have multiple middle destinations.</p>
  
  <p><strong>models.py:</strong></p>
  
  <pre><code>class Destination(models.Model):
      name=models.CharField(max_length=30)
  
  class Ride(models.Model):
      driver = models.ForeignKey('auth.User', related_name='rides_as_driver')
      destination=models.ForeignKey(Destination, related_name='rides_as_final_destination')
      leaving_time=models.TimeField()
      num_of_spots=models.IntegerField()
      passengers=models.ManyToManyField('auth.User', related_name="rides_as_passenger")
      mid_destinations=models.ManyToManyField(Destination, related_name='rides_as_middle_destination')
  </code></pre>
  
  <p><strong>serializers.py - RideSerializer</strong></p>
  
  <pre><code>class RideSerializer(serializers.ModelSerializer):
      driver = serializers.ReadOnlyField(source='driver.user.username')
  
      class Meta:
          model = Ride
          fields = ('driver', 'destination', 'leaving_time',
                    'num_of_spots', 'passengers', 'mid_destinations')
          read_only_fields = ('driver', 'passengers', 'mid_destinations')
  </code></pre>
  
  <p><strong>Problem is -</strong> When I am trying to POST to /rides/ in order to add a ride - for example <code>{destination=LA, leaving_time=19:45, num_of_spots=4}</code></p>
  
  <p>I get error <code>"destination":["Incorrect type. Expected pk value, received str."]}</code></p>
  
  <p><em>couple of questions:</em></p>
  
  <ul>
  <li><p>What is this error? if I have a destination as a foreign key in the <strong>Ride</strong> model, does it mean that the destination that I am adding has to be already in the <strong>Destinations</strong> table?</p></li>
  <li><p>How to fix this error?</p></li>
  </ul>