Заставить фильтры формы взаимодействовать друг с другом django
У меня есть страница в django, на которой есть пара форм, работающих как фильтры содержимого.
self.fields["brand"] = forms.ChoiceField(
label="Brand",
choices=self.__get_brand_choice(),
widget=forms.Select(attrs={"class": "form-select",'onchange': 'submit();'}),
required=False,
)
def __get_brand_choice(self):
products_id = (
SalesView.objects.filter(business_unit=self.business_unit).values_list("brand", flat=True).distinct()
)
products_brand = Brand.objects.filter(
id__in=products_id
).values_list("id", "name").order_by("name")
return [
(None, "TODAS"),
*products_brand,
]
Например, это две части фильтра бренда (но все они в основном одинаковы), у меня есть и другие, связанные с типом продукта и объемом продаж. На данный момент, когда я выбираю один из вариантов, он фильтрует содержимое страницы, но не фильтрует варианты других, так что я могу выбрать только правильные варианты. Это то, что я хочу изменить, я хочу, чтобы они взаимодействовали. Например, если я хочу фильтровать хлеб на странице, я также хочу, чтобы фильтр бренда показывал только бренды, у которых есть хлеб, и если я выбираю определенный бренд, я хочу, чтобы фильтр типа продукта показывал только продукты, связанные с этим брендом.
Я знаю, что в основном я должен передать другие параметры в запрос orm, который запрашивает список продуктов, но я не уверен, как получить эти параметры из других фильтров