title: How to update primary key field using Django Rest Framework
body: <p>I have set field called <code>cus_id</code> into primary key field which is not <code>AutoField</code>. 
  I need to change pk alon to keep other relevant data for same id should be in same index instead pk alone need to be change. </p>
  
  <p>if i gave request via <code>PATCH</code>/<code>PUT</code> it creates new record instead of updating <code>PK</code></p>
  
  <p>so i have gone through <a href="https://docs.djangoproject.com/en/1.8/ref/models/fields/#primary-key" rel="nofollow noreferrer">django docs</a> which says,</p>
  
  <blockquote>
    <p>The primary key field is read-only. If you change the value of the primary key on an existing object and then save it, a new object will be created alongside the old one.</p>
  </blockquote>
  
  <p>but i am using Django Rest Framework for my API generation.. 
  I can achieve it through overriding DRF GET methods. but i want to do without overridden.
  is there any <code>django</code> way to update <code>PK</code> using <code>DRF</code> without overriding get method?</p>
  
  <p><strong>My view:</strong></p>
  
  <pre><code>class ModelViewSet(ModelCustomViewSet):
      model = Model
      queryset = Model.objects.all()
      serializer_class = ModelSerializer
      filter_fields = model._meta.get_all_field_names()
      filter_backends = [DjangoFilterBackendExt, ]
  </code></pre>
  
  <p><strong>Serializer:</strong></p>
  
  <pre><code>class ModelSerializer(RequiredMixin):
      class Meta:
          model = Model
          update_lookup_field = "cus_id"
  </code></pre>