问题描述
如果将订购下拉菜单设置为“无”或“ ----”(默认设置),如何从URL中删除“ ordering =”。
'&ordering=' showing up in url
filters.py
class BrandFilter(django_filters.FilterSet):
brand = django_filters.ModelMultipleChoiceFilter(widget=forms.CheckBoxSelectMultiple)
category = django_filters.ModelMultipleChoiceFilter(widget=forms.CheckBoxSelectMultiple)
ordering = django_filters.OrderingFilter(
choices = (
('-is_featured','Featured'),('-created_at','Date,New to Old'),('created_at',Old to New' ),),fields = (
('is_featured','featured'),#{model field name,parameter in the URL}
('created_at','created'),('price','price'),field_labels = {
'is_featured': 'Featured',human readable label}
'created_at': 'Date','price': 'Price',}
)
class Meta:
model = Product
fields = ('brand','category')
def __init__(self,products= "",category=Category.objects.none(),*args,**kwargs):
super(BrandFilter,self).__init__(*args,**kwargs)
self.filters['brand'].queryset = Brand.objects.filter(product__in=products).distinct()
self.filters['category'].queryset = category
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)