djang中的组合过滤器

2024-09-28 23:44:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用的是django_过滤器,我有一个小问题,把它们组合在一起。在

我有什么?基本过滤器,例如:

class BasicFilter(django_filters.FilterSet):
    class Meta:
        model = myModel
        fields = []


class TimeFilter(BasicFilter):
    created = django_filters.DateFromToRangeFilter(
        help_text='Date from - to', label='Time'
    )
    class Meta(BasicFilter.Meta):
        fields = ['created']


class AgentFilter(BasicFilter):
    agent = django_filters.ModelMultipleChoiceFilter(
        queryset=AgentClass.objects.all(), help_text=''
    )
    class Meta(BasicFilter.Meta):
        fields = ['agent']


class SomethingElseFilter(BasicFilter):
    something = django_filters.ModelMultipleChoiceFilter(
        queryset=SomethingElse.objects.all(), help_text=''
    )
    class Meta(BasicFilter.Meta):
        fields = ['something']

用户将决定他想要的过滤器,例如,他将选择TimeFilter和AgentFilter,我需要将这个基本过滤器连接到一个ConnectedFilter。 然后我用我的观点来处理它,例如

^{pr2}$

或者有更好的解决办法。在


Tags: djangotext过滤器fieldshelpfiltersmetaclass