Как заблокировать один и тот же временной интервал несколько раз в django?
Мы создаем Django приложение, в котором хотим управлять временными интервалами таким образом, чтобы несколько пользователей могли использовать один и тот же временной интервал для заказа товара. Напротив, грузовик доставки может доставлять товар до 9 раз в день (9:30 утра, 10:30 утра, 12:30 вечера, 02:30 вечера, 04:00 вечера, 06:00 вечера, 08:00 вечера, 09:00 вечера, 12:00 утра). Если у нас есть 2 грузовика, то мы можем доставить наш продукт в 9:30 утра дважды за день.
Мы хотим зарезервировать наше текущее время с текущей датой, а также все даты месяца динамически.
Мы не можем заказать один и тот же тайм-слот несколько раз. Как мы можем осуществить несколько заказов в один и тот же тайм-слот?
class OrderDashboard(models.Model):
time = models.TimeField()
reserved = models.BooleanField(default=False)
class Reserved(models.Model):
time = models.TimeField()
date = models.DateField()
# @login_required()
def order_fuel(request):
from django.db.models import Q
date_time = OrderDashboard.objects.all()
reservation = False
if request.method == "POST":
time = request.POST.get('time')
date = request.POST.get('date')
reserved = Reserved.objects.filter(Q(time=time) & Q(date=date))
if reserved:
reservation = True
print(reservation)
return HttpResponse('Time already reserved!')
else:
reserved_ins = Reserved(
time=time,
date=date
)
reserved_ins.save()
return HttpResponse('Order confirmed')
dict = {'date_time': date_time, 'reservation': reservation}
return render(request, 'Uftl_App/orderfuel.html', context=dict)