0
我正在使用Django和其他框架,我无法更新从PATCH方法的数据(字段)。如果我点击,每次它创建新的记录。 请找到下面的代码;从邮递员django修补方法来编辑或更新用户字段
数据:方法 - PATCH
{
"company_id": 2,
"company_code": "PR",
"company_name": "Padise",
"company_description": "company",
"company_address": "company",
"active": true,
"updated_by": null,
"updated_dtm": "2017-04-26T12:12:20Z"
}
上述数据“COMPANY_ID”是主键,我需要修改或更新与该主键记录。 在PATCH方法中,我需要传递主键进行编辑或更新记录。
views.py
class getCompanyDetails(APIView):
def get(self, request):
comp = company.objects.filter(active = True)
serializer = restGetCompanySerializer(comp, many=True)
return JsonResponse({"allCompanies":serializer.data})
def patch(self, request):
serializer = restAddCompanySerializer(data=request.data, partial=True)
if serializer.is_valid():
serializer.save()
return JsonResponse(serializer.data)
return JsonResponse(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
serializer.py
class restAddCompanySerializer(serializers.ModelSerializer):
class Meta:
model = company
fields = '__all__'
嗨感谢您的help.Its工作fine.But updated_dtm不会从models'updated_dtm = models.DateTimeField之日起,时间(空=真,默认= datetime.now)'其不更新数据库中的字段。如何解决这个问题? – user1335606
我不明白你的担心。如果每次更新实例时想更新'update_dtm',只需将models.py编辑为:'updated_dtm = models.DateTimeField(null = True,auto_now_add = True)'。 – akhilsp
@ user1335606这是否解决您的问题?如果它有帮助,请upvote :) – akhilsp