django自动完成django管理的滤光器

dal-admin-filters的Python项目详细描述


django自动完成django管理员的滤光器。

  • default select2 widget

    Admin filter with Select2 input
  • 以筛选器标题作为占位符的小部件

    Admin filter with Select2 input and placeholder title

要求

这是django autocomplete light的扩展,因此需要安装 也可以配置它。

例如,下面是最小设置。

有关详细信息,请参阅http://django-autocomplete-light.readthedocs.io/ 详细说明。

安装

  • 使用pip安装

    pip install django-autocomplete-light dal_admin_filters
    
  • 更新已安装的应用程序。您还需要在管理之前加上django autocomplete灯

    INSTALLED_APPS=['dal','dal_select2','dal_admin_filters',#'django.contrib.admin',...otherstuffthere...]

配置

  • 创建自动完成视图

    • 让我们的模型看起来像这样

      classCountry(models.Model):name=models.CharField(max_length=100,unique=True)def__str__(self):returnself.nameclassPerson(models.Model):name=models.CharField(max_length=100,unique=True)from_country=models.ForeignKey(Country)def__str__(self):returnself.name
    • 然后,国家/地区选择的“自动完成”视图将类似于“下一步”

      fromdalimportautocompletefromyour_countries_app.modelsimportCountryclassCountryAutocomplete(autocomplete.Select2QuerySetView):defget_queryset(self):# Don't forget to filter out results depending on the visitor !ifnotself.request.user.is_authenticated():returnCountry.objects.none()qs=Country.objects.all()ifself.q:qs=qs.filter(name__istartswith=self.q)returnqs
  • 在url.py中注册视图

    fromyour_countries_app.viewsimportCountryAutocompleteurlpatterns=[url(r'^country-autocomplete/$',CountryAutocomplete.as_view(),name='country-autocomplete',),url(r'^admin/',admin.site.urls),]
  • 在admin.py中使用filter

    fromdjango.contribimportadminfromyour_countries_app.modelsimportCountry,Personfromdal_admin_filtersimportAutocompleteFilter@admin.register(Country)classCountryAdmin(admin.ModelAdmin):passclassCountryFilter(AutocompleteFilter):title='Country from'# filter's titlefield_name='from_country'# field name - ForeignKey to Country modelautocomplete_url='country-autocomplete'# url name of Country autocomplete viewclassCountryPlaceholderFilter(AutocompleteFilter):title='Country from'# filter's titlefield_name='from_country'# field name - ForeignKey to Country modelautocomplete_url='country-autocomplete'# url name of Country autocomplete viewis_placeholder_title=True# filter title will be shown as placeholderclassCountryCustomPlaceholderFilter(AutocompleteFilter):title='Country from'# filter's titleparameter_name='from_country'# field name - ForeignKey to Country modelautocomplete_url='country-autocomplete'# url name of Country autocomplete viewwidget_attrs={'data-placeholder':'Filter by country name'}@admin.register(Person)classPersonAdmin(admin.ModelAdmin):classMedia:# Empty media class is required if you are using autocomplete filterpass# If you know better solution for altering admin.media from filter instance#   - please contact me or make a pull requestlist_filter=[CountryFilter]

如果设置正确,您将在管理过滤器中看到select2小部件 在个人的变更列表视图中。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java将视口宽度设置为滚动窗格宽度   当我尝试获取stage属性时,java JavaFX窗口不显示   java无法启动cassandra:+HeapDumpOnAutofMemoryError   java如何在NetBeans 6.9中构建jar?   facebook登录后java将活动重定向到Frontpage活动   安卓 java。util。拉链ZipException:重复条目:如何克服   rest控制器中的java如何以键和值的形式传递值url   swing My java(JFrame)播放器移动脚本无法运行   java如何正确格式化ActionEvent,以便JButtons能够正常工作   java将一个对象的特定属性中的多个值分组   Java是字符串对象内部引用的字符串池吗?   JAVAlang.NullPointerException。。。初始化JDBCMySQL连接   java随机资源选择   java JButton不会出现在GUI上   修改构造函数| Java中创建的列表   java GPS Android无法在实际手机上检索位置,但可以在模拟器上工作   Java泛型类型转换问题   java这个错误是什么意思“setDataSource:JNI中的外部路径是?x@”   如何使用Jackson将没有键的原始JSON数组转换为Java对象