Django Autocomplete灯光不适用于Django过滤器
我正在尝试使用带有Django过滤器的Django自动完成灯光。我已经编写了以下代码。也尝试了不同的解决方案,但对我来说没有任何效果。下拉列表中会显示一个空列表 设置.pyDjango Autocomplete灯光不适用于Django过滤器,django,django-forms,django-filter,django-autocomplete-light,Django,Django Forms,Django Filter,Django Autocomplete Light,我正在尝试使用带有Django过滤器的Django自动完成灯光。我已经编写了以下代码。也尝试了不同的解决方案,但对我来说没有任何效果。下拉列表中会显示一个空列表 设置.py INSTALLED_APPS = [ 'dal', 'dal_select2', 'django.contrib.admin', # ............ ] class OrderFilter(django_filters.FilterSet): user = django_
INSTALLED_APPS = [
'dal',
'dal_select2',
'django.contrib.admin',
# ............
]
class OrderFilter(django_filters.FilterSet):
user = django_filters.ModelChoiceFilter(
label='Username', queryset=User.objects.all(),
empty_label="All",
# lookup_expr='icontains',
widget=autocomplete.ModelSelect2(url='user:search')
)
from django.urls import path
from .views import (
UserList,
UserSearchAutocomplete,
)
app_name = 'user'
urlpatterns = [
path('list/', UserList.as_view(), name='list'),
path('search/', UserSearchAutocomplete.as_view(), name='search'),
]
from dal import autocomplete
class UserSearchAutocomplete(autocomplete.Select2QuerySetView):
def get_queryset(self):
qs = User.objects.all()
if self.q:
qs = qs.filter(first_name__istartswith=self.q)
return qs
过滤器.py
INSTALLED_APPS = [
'dal',
'dal_select2',
'django.contrib.admin',
# ............
]
class OrderFilter(django_filters.FilterSet):
user = django_filters.ModelChoiceFilter(
label='Username', queryset=User.objects.all(),
empty_label="All",
# lookup_expr='icontains',
widget=autocomplete.ModelSelect2(url='user:search')
)
from django.urls import path
from .views import (
UserList,
UserSearchAutocomplete,
)
app_name = 'user'
urlpatterns = [
path('list/', UserList.as_view(), name='list'),
path('search/', UserSearchAutocomplete.as_view(), name='search'),
]
from dal import autocomplete
class UserSearchAutocomplete(autocomplete.Select2QuerySetView):
def get_queryset(self):
qs = User.objects.all()
if self.q:
qs = qs.filter(first_name__istartswith=self.q)
return qs
url.py
INSTALLED_APPS = [
'dal',
'dal_select2',
'django.contrib.admin',
# ............
]
class OrderFilter(django_filters.FilterSet):
user = django_filters.ModelChoiceFilter(
label='Username', queryset=User.objects.all(),
empty_label="All",
# lookup_expr='icontains',
widget=autocomplete.ModelSelect2(url='user:search')
)
from django.urls import path
from .views import (
UserList,
UserSearchAutocomplete,
)
app_name = 'user'
urlpatterns = [
path('list/', UserList.as_view(), name='list'),
path('search/', UserSearchAutocomplete.as_view(), name='search'),
]
from dal import autocomplete
class UserSearchAutocomplete(autocomplete.Select2QuerySetView):
def get_queryset(self):
qs = User.objects.all()
if self.q:
qs = qs.filter(first_name__istartswith=self.q)
return qs
视图.py
INSTALLED_APPS = [
'dal',
'dal_select2',
'django.contrib.admin',
# ............
]
class OrderFilter(django_filters.FilterSet):
user = django_filters.ModelChoiceFilter(
label='Username', queryset=User.objects.all(),
empty_label="All",
# lookup_expr='icontains',
widget=autocomplete.ModelSelect2(url='user:search')
)
from django.urls import path
from .views import (
UserList,
UserSearchAutocomplete,
)
app_name = 'user'
urlpatterns = [
path('list/', UserList.as_view(), name='list'),
path('search/', UserSearchAutocomplete.as_view(), name='search'),
]
from dal import autocomplete
class UserSearchAutocomplete(autocomplete.Select2QuerySetView):
def get_queryset(self):
qs = User.objects.all()
if self.q:
qs = qs.filter(first_name__istartswith=self.q)
return qs
模板/list.html
{{ filter.form.user }}
帮我解决这个问题。提前感谢。我建议使用JS来处理此问题,而不是使用django。当
ModelSelect2
中的url参数无法正常工作时,将显示一个空列表。而不是使用django来处理此问题,我建议使用JS来处理这个问题。当ModelSelect2
中的url参数不能正常工作时,将显示一个空列表。