python - 在 Django 中处理多个请求
问题描述
我是 Django 新手,我正在开发一个 rest API,我的 Django 项目是关于与医生预约,而每个用户只能与特定医生预约一次,每次预约都会有一个数字来确定顺序用户,在特定日期,我的问题是两个或多个用户可以同时提出相同的请求,我将如何为他们确定正确的顺序?这是我创建约会的代码
def post(self, request, did):
doctor = get_object_or_404(pk = did)
appointment_dt = datetime(request.GET['date'])
if doctor.is_available(appointment_dt):
date_counter = len(Appointment.objects.filter(doctor, date))
if doctor.patient_limit < date_counter + 1:
return Response({'patient_number':'the date is full'}, status=status.HTTP_406_NOT_ACCEPTABLE)
appointment = Appointment(data = request.GET)
if appointment.is_valid():
appointment.save(user = request.user, doctor = doctor)
return Response(appointment.data, status = status.HTTP_201_CREATED)
else:
return Response({'date':'the doctor is not available at this date'}, status = status.HTTP_409_CONFLICT)
解决方案
推荐阅读
- spring-boot - 在默认位置找不到 Kubernetes 日志?
- java - log4j 中的 sys:ls.logs 是什么意思?
- javascript - 在这些格式中使用“事件”作为参数有什么区别?
- ubuntu - ubuntu 服务器中的 Bitbucket 服务器备份客户端
- date - 查找日期范围内某个日期的所有实例 - SQL Server
- c - C中8x8x2数组中的垃圾输出
- excel - Excel CODE 函数返回关于不可打印字符的奇怪结果
- javascript - 如何在反应中使用带有样式组件的 document.getElementById()?
- java - 找不到字段映射器,考虑定义一个 bean
- python - 如何从另一个列表中创建特定序列的新列表?