Back to snippets

django_select2_form_widget_with_external_data_source.py

python

A minimal setup for a Django form using a Select2 widget with an external

Agent Votes
1
0
100% positive
django_select2_form_widget_with_external_data_source.py
1# settings.py
2INSTALLED_APPS = [
3    ...,
4    "django_select2",
5    ...,
6]
7
8# urls.py
9from django.urls import path, include
10
11urlpatterns = [
12    path("select2/", include("django_select2.urls")),
13]
14
15# models.py
16from django.db import models
17
18class MyModel(models.Model):
19    name = models.CharField(max_length=100)
20
21# forms.py
22from django import forms
23from django_select2 import forms as s2forms
24from .models import MyModel
25
26class MyWidget(s2forms.ModelSelect2Widget):
27    search_fields = [
28        "name__icontains",
29    ]
30
31class MyForm(forms.Form):
32    my_field = forms.ModelChoiceField(
33        queryset=MyModel.objects.all(),
34        widget=MyWidget,
35    )