0
是否有可能像它在管理列表過濾器進行添加「所有」鏈接到我的過濾器設置? 目前我有這個代碼工作正常,除了它沒有「全部」鏈接,重置篩選器的某些選擇。django_filters與LinkWidget需要所有來清除過濾
在我filters.py
class VersionFilter(FilterSet):
version = AllValuesFilter(widget=widgets.LinkWidget)
codename = AllValuesFilter(widget=widgets.LinkWidget)
class Meta:
model = Version
fields = ['version', 'codename', 'libraries',]
def __init__(self, *args, **kwargs):
super(VersionFilter, self).__init__(*args, **kwargs)
libraries = Library.objects.values_list('name', flat=True).distinct()
library = ChoiceFilter(
name = "libraries__name",
choices = set([(s, s) for s in libraries]),
widget = widgets.LinkWidget,
)
self.filters['libraries'] = library
在我views.py
class VersionsListViewFilter(FilterView):
context_object_name = 'versions_list'
filterset_class = VersionFilter
我得到這個錯誤 例外類型: 類型錯誤 例外值: __init __()得到了一個意外的關鍵字參數'empty_label' 異常位置: /Library/Python/2.7/site-packages/django/forms/fields.py in __init__,line 672' –
請給我看你的代碼使用上述解決方案,使用dpaste.com粘貼您的代碼並共享鏈接。 –
@YorikZiru我已經更新了答案,告訴你如何使用它。另外,如果'empty_label'在過濾中不起作用,請嘗試將其設置爲空字符串'''' –