django-filter的FilterSet位于何处?

alp*_*et5 4 python django django-filter

文档显示

我们有许多字段,我们希望让用户根据价格或release_date进行过滤.我们为此创建一个FilterSet:

import django_filters

class ProductFilter(django_filters.FilterSet):
    class Meta:
        model = Product
        fields = ['price', 'release_date']
Run Code Online (Sandbox Code Playgroud)

这段代码放在哪里创建一个FilterSet?是模型还是视图?谢谢.

elm*_*ylp 6

无论你想要什么,我的意思是models.py,views.py甚至是一个名为filters.py的新文件.因为您将在views.py中使用该过滤器,所以您可以从项目的任何位置导入过滤器.对我来说,我认为应用程序中的文件filters.py是最好的地方.

所以在你的views.py中导入像这样的过滤器:

from .filters import ProductFilter
Run Code Online (Sandbox Code Playgroud)