improve condition filters
This commit is contained in:
+18
-3
@@ -25,6 +25,7 @@ def get_authors(request):
|
||||
|
||||
return queryset
|
||||
|
||||
|
||||
def get_cases(request):
|
||||
if request is None:
|
||||
return Case.objects.none()
|
||||
@@ -36,6 +37,7 @@ def get_cases(request):
|
||||
|
||||
return queryset
|
||||
|
||||
|
||||
def get_series(request):
|
||||
if request is None:
|
||||
return Series.objects.none()
|
||||
@@ -47,6 +49,7 @@ def get_series(request):
|
||||
|
||||
return queryset
|
||||
|
||||
|
||||
class CaseCollectionFilter(django_filters.FilterSet):
|
||||
author = django_filters.ModelMultipleChoiceFilter(
|
||||
queryset=get_authors, null_label="No author"
|
||||
@@ -72,12 +75,15 @@ class CaseCollectionFilter(django_filters.FilterSet):
|
||||
request=None,
|
||||
):
|
||||
if not request.user.groups.filter(name="atlas_editor").exists():
|
||||
queryset = queryset.prefetch_related("author").filter(author__id=request.user.id)
|
||||
queryset = queryset.prefetch_related("author").filter(
|
||||
author__id=request.user.id
|
||||
)
|
||||
super(CaseCollectionFilter, self).__init__(
|
||||
data=data, queryset=queryset, prefix=prefix, request=request
|
||||
)
|
||||
pass
|
||||
|
||||
|
||||
class CaseFilter(django_filters.FilterSet):
|
||||
author = django_filters.ModelMultipleChoiceFilter(
|
||||
queryset=get_authors, null_label="No author"
|
||||
@@ -111,7 +117,9 @@ class CaseFilter(django_filters.FilterSet):
|
||||
request=None,
|
||||
):
|
||||
if not request.user.groups.filter(name="atlas_editor").exists():
|
||||
queryset = queryset.prefetch_related("author").filter(author__id=request.user.id)
|
||||
queryset = queryset.prefetch_related("author").filter(
|
||||
author__id=request.user.id
|
||||
)
|
||||
super(CaseFilter, self).__init__(
|
||||
data=data, queryset=queryset, prefix=prefix, request=request
|
||||
)
|
||||
@@ -151,7 +159,14 @@ class SeriesFilter(django_filters.FilterSet):
|
||||
class ConditionFilter(django_filters.FilterSet):
|
||||
class Meta:
|
||||
model = Condition
|
||||
fields = {"name": ["contains"], "primary": ["exact"], "synonym": ["exact"], "parent": ["exact"], "subspecialty": ["exact"]}
|
||||
fields = {
|
||||
"name": ["icontains"],
|
||||
"primary": ["exact"],
|
||||
"synonym": ["exact"],
|
||||
"parent": ["exact"],
|
||||
"subspecialty": ["exact"],
|
||||
"rcr_curriculum": ["exact"],
|
||||
}
|
||||
|
||||
def __init__(
|
||||
self,
|
||||
|
||||
Reference in New Issue
Block a user