3
當我覆蓋get_search_results
方法後,list_filter
不起作用,但搜索字段按我的預期工作。如預期管理員列表過濾器和搜索結果
class NaruceniProduktiAdmin(admin.ModelAdmin):
search_fields = ('broj_narudbe',)
list_filter = ('date', 'status',)
list_display = (
'naziv_produkta', 'datum', 'narudba_broj', 'boja', 'velicina', 'cijena', 'kolicina',
'ukupna_cijena','korisnik_link','status','source_link',
)
actions = [dostupan, nedostupan, email_dostupan, placen, posalji_racun, poslan, isporucen, storniran, posalji_storno, ]
def get_search_results(self, request, queryset, search_term):
queryset, use_distinct = super(NaruceniProduktiAdmin, self).get_search_results(request, queryset, search_term)
try:
search_term_as_int = int(search_term)
except ValueError:
search_term_as_int=search_term.strip()
queryset |= self.model.objects.filter(korisnik__ime__icontains=search_term_as_int)
if not queryset:
queryset |= self.model.objects.filter(korisnik__prezime__icontains=search_term_as_int)
else:
queryset = self.model.objects.filter(broj_narudbe=search_term_as_int)
return queryset, use_distinct
如果我刪除get_search_results
,然後list_filter
作品。我想保留它,因爲我希望搜索字段的工作方式符合我的期望,但我也希望列表篩選能像通常那樣工作。
有沒有一種方法可以將這兩種方法結合使用?爲什麼一個人會影響另一個呢?
你是什麼意思「'list_filter'不工作」?怎麼了? – Anentropic
當我點擊在Django管理員權限過濾日期..例如今天,ot過去7天沒有發生任何事情 – blaz1988
任何人?主要問題是爲什麼get_search_results會影響list_filter的工作。Django是否對search_fields和list_filter使用了相同的方法get_search_results ..? – blaz1988