Как сохранить детали таймслота при создании экземпляра бронирования django
У меня есть приложение django, в котором я реализую систему бронирования. Я создал модель TimeSlot, которая имеет начальное_время, конечное_время и владельца временного_слота. Я хочу реализовать систему бронирования, в которой детали таймслота, такие как начальное_время, конечное_время и владелец таймслота добавляются в модель бронирования после ее создания.
Моя модель TimeSlot:
class TimeSlot(models.Model):
time_slot_owner = models.ForeignKey(User, on_delete=models.CASCADE)
start_time = models.TimeField()
end_time = models.TimeField()
Моя модель бронирования:
class Booking(models.Model):
bookings_owner = models.ForeignKey(User, on_delete=models.CASCADE)
# time_slot = models.ForeignKey(TimeSlot, on_delete)
meals_booked = models.IntegerField(default=0, validators=[MinValueValidator(0)])
start_time = models.TimeField()
end_time = models.TimeField()
restaurant = models.ForeignKey(User, on_delete=models.CASCADE, related_name="restaurant")
Что у меня есть в моей функции create_booking в файле views.py
def create_booking(request):
instance = Booking()
data = request.POST.copy()
data["bookings_owner"] = request.user
form = BookingForm(data or None, instance=instance)
if request.method == "POST" and form.is_valid():
start_time = request.POST.get("start_time")
print(start_time)
form.save()
return HttpResponseRedirect(reverse("food_avail:view_bookings"))
return render(request, "food_avail/create_booking.html", {"booking": form})
Это приведет меня на эту страницу, где я могу ввести количество блюд, которые я хочу забронировать:
После ввода количества блюд я хочу, чтобы на последней странице отображались следующие данные для каждого бронирования: Booking.booking_owner.username | TimeSlot.time_slot_owner.username | TimeSlot.start_time | TimeSlot.end_time | Booking.meals_booked