Использование формы django для отображения данных

Я новичок в django и делаю проект django, в котором пользователь может бронировать места на прием. Я хочу, чтобы пользователь вводил дату в datepicker и затем видел доступные для бронирования места на этот день. Я пробовал использовать get запросы, но продолжаю получать ошибки.

Это мои модели

class Slot(models.Model):

    title = models.CharField(max_length=50)

    def __str__(self):
        return f'There is a slot at {self.title}'


class Booking(models.Model):

    user = models.ForeignKey(settings.AUTH_USER_MODEL,
                             on_delete=models.CASCADE)
    slot = models.ForeignKey(Slot, on_delete=models.CASCADE)
    booking_date = models.DateField(("Date"), default=date.today)

    def __str__(self):
        return f'{self.user} has booked a session at {self.slot.title} on {self.booking_date}'

Где я устанавливаю слоты как доступное время (9-10 утра и т.д.)

Это мои взгляды

def BookingView(request):
    form = BookingForm(request.POST or None)
    if form.is_valid():
        form.save()
        form = BookingForm()

    context = {
        'form': form
    }
    return render(request, "bookingapp/book_form.html", context)


def DateView(request):
    form = DateForm(request.GET or None)
    if form.is_valid():
        form.save()
        form = DateForm()

    

    context = {
        'form': form
    }
    return render(request, "bookingapp/date_form.html", context)

Вот мои формы


This is the form I will use when the user is booking the slot.

class BookingForm(forms.ModelForm):
    class Meta:
        model = Booking
        fields = [
            'user',
            'slot',
        ]

А это форма, которую я имею на данный момент для ввода даты пользователем.

class DateInput(forms.DateInput):
    input_type = 'date'


class DateForm(forms.Form):
    Date = forms.DateField(widget=DateInput)

Вернуться на верх