Как показать конкретные столики в ресторане? - PullRequest
1 голос
/ 26 октября 2019

Я работаю над приложением Restaurant Reservation, я хочу показать таблицы конкретных ресторанов, поэтому, когда человек нажимает на ссылку ресторана, он переходит на страницу с описанием ресторана, на этой странице снова появляются таблицы этого ресторанакогда человек нажимает на ссылку таблицы, он перенаправляет на страницу формы бронирования, на этой странице я хочу показать список доступных таблиц этого ресторана.

это мои модели.py

class Restaurant(models.Model):
    user = models.ForeignKey(User, on_delete=models.CASCADE)
    name = models.CharField(max_length=250)

class Table(models.Model):
    restaurant = models.ForeignKey(Restaurant, on_delete=models.CASCADE)
    time = models.ForeignKey(Time, on_delete=models.CASCADE, null=True, blank=False)
    booked_by = models.OneToOneField(User, null=True, on_delete=models.SET_NULL, related_name='table_booked', blank=True)
    name = models.CharField(max_length=100, help_text="Table name or number.", blank=False)

так вот мой файл forms.py, теперь он покажет все доступные таблицы всех ресторанов. Но я хочу показать таблицы конкретного ресторана.

class BookingFormm(forms.ModelForm):
    table_booked = ModelChoiceField(queryset=Table.objects.filter(booked_by__isnull=True))

    class Meta:
        model = Table
        fields = ['table_booked']

А вот мои views.py

@login_required
def booking(request):
    form = BookingForm(request.POST or None, instance=request.user)
    if form.is_valid():
        user = form.save(commit=False)
        tbl = form.cleaned_data['table_booked']
        tbl.booked_by = request.user
        tbl.save()
        user.save()
        print(request.user.table_booked.id, request.user.table_booked.is_booked)
        return redirect('/')
    return render(request, 'booking/booking.html', {'form': form})

Если у вас есть идеи, пожалуйста, помогите мне. Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...