I am using Django Rest Framework. I want to create a record if it doesn't exist, or update it if it does exist.
What I did:
class MyModelList(generics.ListCreateAPIView):
queryset = MyModel.objects.all()
serializer_class = MyModeSerializer
permission_classes = (permissions.IsAuthenticated,)
def perform_create(self, serializer):
my_model, created = MyModel.objects.update_or_create(user_id=self.request.data['user_id'],
defaults={
'reg_id': self.request.data['reg_id']
})
The record is created or updated, but I am getting an error 'OrderedDict' object has no attribute 'pk'
. How do you use update_or_create
?