Skip to content
Snippets Groups Projects
Commit 4a04d4ed authored by Todd Dembrey's avatar Todd Dembrey
Browse files

Add select2 widget to the form

parent aa695eeb
No related branches found
No related tags found
No related merge requests found
import django_filters as filters import django_filters as filters
import django_tables2 as tables import django_tables2 as tables
from django_select2.forms import Select2MultipleWidget
from wagtail.wagtailcore.models import Page from wagtail.wagtailcore.models import Page
...@@ -30,9 +31,15 @@ def get_used_funds(request): ...@@ -30,9 +31,15 @@ def get_used_funds(request):
return Page.objects.filter(applicationsubmission__isnull=False).distinct() return Page.objects.filter(applicationsubmission__isnull=False).distinct()
class Select2ModelMultipleChoiceFilter(filters.ModelMultipleChoiceFilter):
def __init__(self, *args, **kwargs):
kwargs.setdefault('widget', Select2MultipleWidget)
super().__init__(*args, **kwargs)
class SubmissionFilter(filters.FilterSet): class SubmissionFilter(filters.FilterSet):
round = filters.ModelMultipleChoiceFilter(queryset=get_used_rounds) round = Select2ModelMultipleChoiceFilter(queryset=get_used_rounds)
page = filters.ModelMultipleChoiceFilter(queryset=get_used_funds, label='Funds') page = Select2ModelMultipleChoiceFilter(queryset=get_used_funds, label='Funds')
class Meta: class Meta:
model = ApplicationSubmission model = ApplicationSubmission
......
...@@ -24,3 +24,7 @@ ...@@ -24,3 +24,7 @@
{% render_table table %} {% render_table table %}
</div> </div>
{% endblock %} {% endblock %}
{% block extra_js %}
{{ filter.form.media }}
{% endblock %}
...@@ -58,6 +58,7 @@ INSTALLED_APPS = [ ...@@ -58,6 +58,7 @@ INSTALLED_APPS = [
'wagtailcaptcha', 'wagtailcaptcha',
'django_tables2', 'django_tables2',
'django_filters', 'django_filters',
'django_select2',
'addressfield', 'addressfield',
'django.contrib.admin', 'django.contrib.admin',
......
...@@ -24,6 +24,7 @@ urlpatterns = [ ...@@ -24,6 +24,7 @@ urlpatterns = [
url('^', include(apply_urls)), url('^', include(apply_urls)),
url('^', include('social_django.urls', namespace='social')), url('^', include('social_django.urls', namespace='social')),
url(r'^tinymce/', include('tinymce.urls')), url(r'^tinymce/', include('tinymce.urls')),
url(r'^select2/', include('django_select2.urls')),
] ]
......
...@@ -20,6 +20,7 @@ flake8 ...@@ -20,6 +20,7 @@ flake8
social_auth_app_django==2.1.0 social_auth_app_django==2.1.0
django-tables2==1.17.1 django-tables2==1.17.1
django-filter==1.1.0 django-filter==1.1.0
django_select2==6.0.1
# Production dependencies # Production dependencies
dj-database-url==0.4.1 dj-database-url==0.4.1
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment