mirror of
https://github.com/TandoorRecipes/recipes.git
synced 2026-01-01 04:10:06 -05:00
fixed filter for foods
This commit is contained in:
@@ -11,8 +11,8 @@ class RecipeFilter(django_filters.FilterSet):
|
|||||||
name = django_filters.CharFilter(method='filter_name')
|
name = django_filters.CharFilter(method='filter_name')
|
||||||
keywords = django_filters.ModelMultipleChoiceFilter(queryset=Keyword.objects.all(), widget=MultiSelectWidget,
|
keywords = django_filters.ModelMultipleChoiceFilter(queryset=Keyword.objects.all(), widget=MultiSelectWidget,
|
||||||
method='filter_keywords')
|
method='filter_keywords')
|
||||||
ingredients = django_filters.ModelMultipleChoiceFilter(queryset=Food.objects.all(), widget=MultiSelectWidget,
|
foods = django_filters.ModelMultipleChoiceFilter(queryset=Food.objects.all(), widget=MultiSelectWidget,
|
||||||
method='filter_ingredients', label=_('Ingredients'))
|
method='filter_foods', label=_('Ingredients'))
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def filter_keywords(queryset, name, value):
|
def filter_keywords(queryset, name, value):
|
||||||
@@ -23,11 +23,11 @@ class RecipeFilter(django_filters.FilterSet):
|
|||||||
return queryset
|
return queryset
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def filter_ingredients(queryset, name, value):
|
def filter_foods(queryset, name, value):
|
||||||
if not name == 'ingredients':
|
if not name == 'foods':
|
||||||
return queryset
|
return queryset
|
||||||
for x in value:
|
for x in value:
|
||||||
queryset = queryset.filter(ingredient__food=x).distinct()
|
queryset = queryset.filter(steps__ingredients__food__name=x).distinct()
|
||||||
return queryset
|
return queryset
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
@@ -43,7 +43,7 @@ class RecipeFilter(django_filters.FilterSet):
|
|||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = Recipe
|
model = Recipe
|
||||||
fields = ['name', 'keywords', 'ingredients', 'internal']
|
fields = ['name', 'keywords', 'foods', 'internal']
|
||||||
|
|
||||||
|
|
||||||
class IngredientFilter(django_filters.FilterSet):
|
class IngredientFilter(django_filters.FilterSet):
|
||||||
|
|||||||
@@ -67,7 +67,7 @@
|
|||||||
{{ filter.form.keywords | as_crispy_field }}
|
{{ filter.form.keywords | as_crispy_field }}
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
{{ filter.form.ingredients | as_crispy_field }}
|
{{ filter.form.foods | as_crispy_field }}
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
{{ filter.form.internal | as_crispy_field }}
|
{{ filter.form.internal | as_crispy_field }}
|
||||||
|
|||||||
Reference in New Issue
Block a user