Представьте себе общежитие, отслеживающее, свободна ли комната в данный вечер. Кроме того, если группа из более чем одного гостя ищет номер, им понадобится только номер с как минимум таким количеством кроватей.
Учитывая диапазон дат, я хотел бы найти свободные номера, в которых есть как минимум количество спальных мест в зависимости от количества гостей (наряду с другими фильтрами).
Как я могу сделать это без эффективной цепочки AND с .filters? (Вот как это работает сейчас - и очень огорчает мою базу данных.)
Я, безусловно, открыт для другой схемы хранения данных о доступности, если это необходимо.
Спасибо! (Гипотетические классы ниже, чтобы лучше понять проблему.)
class Room(models.Model):
name = models.CharField(max_length=100)
class RoomAvailability(models.Model):
room = models.ForeignKey(Rooms)
date = models.DateField()
beds = models.IntegerField(default=1)