Add Subspecialty autocomplete and filter to QuestionFilter

This commit is contained in:
Ross
2025-10-20 16:17:07 +01:00
parent 512b222ccc
commit 3daad1b83b
3 changed files with 32 additions and 4 deletions
+8 -3
View File
@@ -2,7 +2,7 @@ import django_filters
from dal import autocomplete
from .models import Category, Question, UserAnswer, Exam
from atlas.models import Condition, Structure, Finding, Presentation
from atlas.models import Condition, Structure, Finding, Presentation, Subspecialty
#from generic.filters import UserAnswerFilter
from django.contrib.auth.models import User
@@ -34,7 +34,12 @@ def get_authors(request):
class QuestionFilter(django_filters.FilterSet):
exams = django_filters.ModelMultipleChoiceFilter(queryset=get_exams, null_label="No exam")
author = django_filters.ModelMultipleChoiceFilter(queryset=get_authors, null_label="No author")
category = django_filters.ModelChoiceFilter(queryset=Category.objects.all(),null_label="Uncategorised")
category = django_filters.ModelMultipleChoiceFilter(queryset=Category.objects.all(),null_label="Uncategorised")
subspecialty = django_filters.ModelMultipleChoiceFilter(
queryset=Subspecialty.objects.all(),
widget=autocomplete.ModelSelect2Multiple(url='atlas:subspecialty-autocomplete'),
label='Subspecialty',
)
condition = django_filters.ModelMultipleChoiceFilter(
queryset=Condition.objects.all(),
widget=autocomplete.ModelSelect2Multiple(url='atlas:condition-autocomplete'),
@@ -57,7 +62,7 @@ class QuestionFilter(django_filters.FilterSet):
)
class Meta:
model = Question
fields = ("exams", "created_date", "condition", "structure", "finding", "presentation")
fields = ("exams", "created_date", "condition", "structure", "finding", "presentation", "category", "subspecialty")
def __init__(self, data=None, queryset=None, prefix=None, strict=None, user=None, request=None):
if not request.user.groups.filter(name="sba_checker").exists():