def update(self, request, pk=None): queryset = Medicine.objects.all() medicine = get_object_or_404(queryset, pk=pk) serializer = MedicineSerliazer(medicine, data=request.data, context={"request": request}) serializer.is_valid() serializer.save() #print(request.data["medicine_details"]) for salt_detail in request.data["medicine_details"]: if salt_detail["id"] == 0: #For Insert New Salt Details del salt_detail["id"] salt_detail["medicine_id"] = serializer.data["id"] serializer2 = MedicalDetailsSerializer( data=salt_detail, context={"request": request}) serializer2.is_valid() serializer2.save() else: #For Update Salt Details queryset2 = MedicalDetails.objects.all() medicine_salt = get_object_or_404(queryset2, pk=salt_detail["id"]) del salt_detail["id"] serializer3 = MedicalDetailsSerializer( medicine_salt, data=salt_detail, context={"request": request}) serializer3.is_valid() serializer3.save() print("UPDATE") return Response({"error": False, "message": "Data Has Been Updated"})
def create(self,request): try: serializer=MedicineSerliazer(data=request.data,context={"request":request}) serializer.is_valid(raise_exception=True) serializer.save() medicine_id=serializer.data['id'] #Access The Serializer Id Which JUSt SAVE in OUR DATABASE TABLE #print(medicine_id) #Adding and Saving Id into Medicine Details Table medicine_details_list=[] for medicine_detail in request.data["medicine_details"]: print(medicine_detail) #Adding medicine id which will work for medicine details serializer medicine_detail["medicine_id"]=medicine_id medicine_details_list.append(medicine_detail) print(medicine_detail) serializer2=MedicalDetailsSerializer(data=medicine_details_list,many=True,context={"request":request}) serializer2.is_valid() serializer2.save() dict_response={"error":False,"message":"Medicine Data Save Successfully"} except: dict_response={"error":True,"message":"Error During Saving Medicine Data"} return Response(dict_response)