如何删除表单文件标签中的django筛选器附加关键字
在筛选器中自定义搜索类型时:如何删除表单文件标签中的django筛选器附加关键字,django,django-filters,Django,Django Filters,在筛选器中自定义搜索类型时: django_filters.CharFilter(lookup_expr='icontains') 它将“[field_name]contains”关键字添加到模板{{field.label}中显示标签的末尾。我在模型中特别使用了verbose\u name='Some field'参数,以使其在模板中可访问,但过滤器出于无法解释的原因对其进行了修改。 当我在versbose_name中设置它时,是否有显示它的选项 UPD: 已解决此问题,请将其添加到setti
django_filters.CharFilter(lookup_expr='icontains')
它将“[field_name]contains”关键字添加到模板{{field.label}
中显示标签的末尾。我在模型中特别使用了verbose\u name='Some field'
参数,以使其在模板中可访问,但过滤器出于无法解释的原因对其进行了修改。
当我在versbose_name中设置它时,是否有显示它的选项
UPD:
已解决此问题,请将其添加到settings.py
def FILTERS_VERBOSE_LOOKUPS():
from django_filters.conf import DEFAULTS
verbose_lookups = DEFAULTS['VERBOSE_LOOKUPS'].copy()
verbose_lookups.update({
'exact': (''),
'iexact': (''),
'contains': (''),
'icontains': (''),
})
return verbose_lookups
您可以将
label
参数添加到过滤器中,以明确设置字段的标签:
django_filters.CharFilter(lookup_expr='icontains', label='the label')
此外,如果您不喜欢django filters创建其过滤器的方式,可以使用
filters\u VERBOSE\u LOOKUPS
设置()。我还没有测试过它,但它说你可以将它设置为False
来禁用此行为-你可能想试试这个。很好,谢谢,这正是我想要的。通过过滤器\u详细\u查找解决了此问题。