id,summary,reporter,owner,description,type,status,component,version,severity,resolution,keywords,cc,stage,has_patch,needs_docs,needs_tests,needs_better_patch,easy,ui_ux 19182,"ModelAdmin filtering when list_filter = (('fieldname', ClassName),) throws SuspiciousOperation exception",Andrey Gusev,nobody,"Admin raises SuspiciousOperation on using complex query like {{{ghi__jkl__contains}}} in custom list filter described by {{{('fieldpath', ClassName )}}} syntax. {{{#!python class MyModelAdmin(ModelAdmin): ... list_filter = ( 'abc', 'def', ( 'ghi__jkl__contains', MyListFilter ) ) ... }}} Simple but ugly fix by replacing last line of {{{ModelAdmin.lookup_allowed}}} (around line 270 in contrib/admin/options.py): {{{#!diff clean_lookup = LOOKUP_SEP.join(parts) --- return clean_lookup in self.list_filter or clean_lookup == self.date_hierarchy +++ return any([ ( clean_lookup == ( i[0] if isinstance(i, tuple) else i ) ) for i in self.list_filter ]) or clean_lookup == self.date_hierarchy }}} ",Bug,closed,contrib.admin,1.4,Normal,fixed,modeladmin lookup_allowed,r1chardj0n3s schillingt@… Paul Garner chris+django@…,Accepted,1,0,0,0,0,0