django list_filter 不可滚动

问题描述

我有一个很长的元素列表(50 个元素),我想将它用作 django 管理面板中的 list_filter。但是,当我使用此列表时,在出现 FILTER 面板的最右侧,我只能看到 20 个项目并且它不可滚动,因此隐藏了其余 30 个项目。如何在 FILTER 部分获取这 30 个项目或如何滚动才能查看所有 50 个项目。

解决方法

我建议你使用这个很酷的第三方。

如果您遇到问题,它易于使用且用户友好。

enter image description here

例如看看这个。 models.py

from django.db import models

class Artist(models.Model):
    name = models.CharField(max_length=128)

class Album(models.Model):
    name = models.CharField(max_length=64)
    artist = models.ForeignKey(Artist,on_delete=models.CASCADE)
    cover = models.CharField(max_length=256,null=True,default=None)

admin.py

from django.contrib import admin
from admin_auto_filters.filters import AutocompleteFilter


class ArtistFilter(AutocompleteFilter):
    title = 'Artist' # display title
    field_name = 'artist' # name of the foreign key field


class ArtistAdmin(admin.ModelAdmin):
    search_fields = ['name'] # this is required for django's autocomplete functionality
    # ...


class AlbumAdmin(admin.ModelAdmin):
    list_filter = [ArtistFilter]

    """
        defining this class is required for AutocompleteFilter
        it's a bug and I am working on it.
    """
    class Media:
        pass

    # ...

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...