Skip to content

Commit 8b02fe8

Browse files
authored
Merge pull request #159 from cmu-delphi/data_source_filter_fix
Fixed 'Data Source' filter.
2 parents 2eda562 + cf27fa7 commit 8b02fe8

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

src/signals/forms.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,8 @@ class SignalFilterForm(forms.ModelForm):
2828
search = forms.CharField(min_length=3)
2929
pathogen = forms.ModelChoiceField(queryset=Pathogen.objects.all(), widget=forms.CheckboxSelectMultiple())
3030
active = forms.TypedMultipleChoiceField(choices=ActiveChoices.choices, coerce=bool, widget=forms.CheckboxSelectMultiple())
31-
source = forms.ModelMultipleChoiceField(
32-
queryset=SourceSubdivision.objects.values_list('external_name', 'external_name').distinct(),
31+
source = forms.MultipleChoiceField(
32+
choices=[],
3333
widget=forms.CheckboxSelectMultiple()
3434
)
3535
time_type = forms.ChoiceField(choices=TimeTypeChoices.choices, widget=forms.CheckboxSelectMultiple())
@@ -78,9 +78,12 @@ def __init__(self, *args, **kwargs) -> None:
7878
super().__init__(*args, **kwargs)
7979

8080
# Set required attribute to False and disable helptext for all fields
81+
self.fields["available_geography"].queryset = self.fields["available_geography"].queryset.order_by("order_id")
82+
try:
83+
self.fields["source"].choices = set(SourceSubdivision.objects.values_list('external_name', 'external_name'))
84+
except SourceSubdivision.DoesNotExist:
85+
self.fields["source"].choices = []
8186
for field_name, field in self.fields.items():
8287
field.required = False
8388
field.help_text = ''
8489
field.label = ''
85-
if field_name == "available_geography":
86-
field.queryset = field.queryset.order_by("order_id")

0 commit comments

Comments
 (0)