Я пытаюсь написать запрос, который возвращает Vehicle
объектов.Запрос должен фильтроваться по конкретному объекту Garage
(т. Е. Garage__name =) и по конкретному объекту Category
(т. Е. Category__name =), и где поле available объекта Vehicle
равно True (доступно = True).Это модели:
class Garage(models.Model):
name = models.CharField (max_length = 30, blank=False)
zip = models.IntegerField (blank=False)
area = models.CharField (max_length = 30, blank=False)
pic = models.ImageField (upload_to ='static/images/garages')
class Vehicle(models.Model):
car_no = models.CharField (max_length = 20, blank=False)
photo = models.ImageField (upload_to ='static/images/vehicles')
car_model = models.ForeignKey (Car_model, on_delete=models.CASCADE)
garage = models.ForeignKey (Garage, on_delete=models.CASCADE)
category = models.ForeignKey (Category, on_delete=models.CASCADE)
available = models.BooleanField(default=True)
class Category(models.Model):
name = models.CharField (max_length = 15, blank=False)
В соответствующей функции просмотра я попробовал следующее:
def carSelectView(request, type, grg):
cars=Vehicle.objects.filter(category__name=type, garage__name=grg, available=True)
return render(request, 'carphotoselectpage.html', {'ca':cars})
Но он возвращает пустую страницу.До этого я пытался получить автомобили только определенной категории, и это сработало:
def carSelectView(request, type):
cars = Vehicle.objects.filter(category__name = type).filter(available=True)
Я не могу понять, в чем проблема.Я хочу показать автомобили: 1. выбрав конкретный Garage
, а затем 2. выбрав автомобили из того Garage
, который соответствует названию Category
.3. Чье доступное поле равно True .
Неужели модель Vehicle
не получает модель Garage
в запросе?