Один и тот же пользователь отправляет несколько post api запросов одновременно, и мы пытаемся добавить новые данные со старыми данными в базе данных
Но почему-то нет последовательности в выводе. В какой-то момент времени вы увидите в консоли два последовательных "inside post", а в какой-то момент времени вы увидите один раз два раза подряд "after save method", выведенные в консоли. Данные, сохраненные в базе данных, также не имеют последовательности. Одно решение, которое я могу придумать раньше один и тот же пользователь посылал много post запросов в одно и то же время, нажимая одну кнопку, теперь я думаю, что после нажатия кнопки первый запрос должен пойти, и после того, как фронтенд получил ответ, второй запрос должен послать post запрос и так далее. Если у вас есть лучший подход, пожалуйста, предложите
@csrf_exempt
def product_rest(request,pk):
product=Product.objects.get(pk=pk)
if request.method == "POST":
status = True
code = 200
message = ""
data = []
print("inside post")
parsed_data=json.loads(request.body)
print("parsing data == ", parsed_data)
try:
db_time = json.loads(product.time)
print("old data ==",db_time)
db_time.append(parsed_data)
db_time_tostring=json.dumps(db_time)
print("after adding data == ", db_time_tostring)
product.time=db_time_tostring
product.save()
print(" after save method == ", product.time)
message = "Order status created"
except:
status = False
code = 500
message = "Internal server error"
return JsonResponse({
"status": status,
"code": code,
"message": message,
"data": data
})