title: django rest framework change primary key to use a unqiue field
body: <p>I have a model which is called <code>GameProfile</code>, which is a one to one relation with <code>User</code> model. I used <code>HyperlinkedModelSerializer</code> across all my design. </p>
  
  <p>For the <code>GameProfile</code>, the user field is suppose to be the primary key for querying, it is unique but I did not set it up as a primary key. Is there a way to change the default behavior of django serializer to point to <code>user__id</code> as the primary key and always use it for retreiving the profile in the detail view?</p>
  
  <pre><code>class GameProfileSerializer(serializers.HyperlinkedModelSerializer):
      """ 
      """
      user_pk = serializers.Field(source='user.id')
  
      class Meta:
          model = GameProfile
  
  
  class GameProfileViewSet(viewsets.ModelViewSet):
      """
      """
      queryset = GameProfile.objects.all()
      serializer_class = GameProfileSerializer
  
      def get_queryset(self):
          """ get_queryset
          """
          queryset = super(GameProfileViewSet, self).get_queryset()
          if not queryset.exists():
              raise Http404
          if self.request.user.is_authenticated() and not self.request.user.is_superuser:
              return queryset.filter(user=self.request.user)
          return queryset
  </code></pre>
  
  <p>please advise, thanks in advance:)</p>