Add filters for condition, structure, finding, and presentation to QuestionFilter
This commit is contained in:
+23
-1
@@ -1,6 +1,8 @@
|
||||
import django_filters
|
||||
from dal import autocomplete
|
||||
|
||||
from .models import Category, Question, UserAnswer, Exam
|
||||
from atlas.models import Condition, Structure, Finding, Presentation
|
||||
|
||||
#from generic.filters import UserAnswerFilter
|
||||
from django.contrib.auth.models import User
|
||||
@@ -33,9 +35,29 @@ 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")
|
||||
condition = django_filters.ModelMultipleChoiceFilter(
|
||||
queryset=Condition.objects.all(),
|
||||
widget=autocomplete.ModelSelect2Multiple(url='atlas:condition-autocomplete'),
|
||||
label='Condition',
|
||||
)
|
||||
structure = django_filters.ModelMultipleChoiceFilter(
|
||||
queryset=Structure.objects.all(),
|
||||
widget=autocomplete.ModelSelect2Multiple(url='atlas:structure-autocomplete'),
|
||||
label='Structure',
|
||||
)
|
||||
finding = django_filters.ModelMultipleChoiceFilter(
|
||||
queryset=Finding.objects.all(),
|
||||
widget=autocomplete.ModelSelect2Multiple(url='atlas:finding-autocomplete'),
|
||||
label='Finding',
|
||||
)
|
||||
presentation = django_filters.ModelMultipleChoiceFilter(
|
||||
queryset=Presentation.objects.all(),
|
||||
widget=autocomplete.ModelSelect2Multiple(url='atlas:presentation-autocomplete'),
|
||||
label='Presentation',
|
||||
)
|
||||
class Meta:
|
||||
model = Question
|
||||
fields = ("exams", "created_date")
|
||||
fields = ("exams", "created_date", "condition", "structure", "finding", "presentation")
|
||||
|
||||
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():
|
||||
|
||||
Reference in New Issue
Block a user