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 16609,Admin searches produce duplicate results if search_fields contains M2M traversals,cheater00@…,nobody,"I believe this has already been touched upon in #15819, however the consensus (comment ticket:15819#comment:13) was ""For people in situations where `.distinct()` is broken for whatever reason, the workaround here is simple: don't use `search_fields` with relations in a way that triggers it."" I couldn't find a ticket for this, so here it is. In my case, I am searching for a keyword which is found in a `search_fields` item that isn't traversing M2M. When `search_fields` also contains a M2M traversal, I get duplicate results. In my case - this might be relevant or not - I am traversing a !ForeignKey first and then an M2M field in that problematic search_fields entry, e.g: {{{ search_fields = ['=id', '=fkmodel__m2mmodel__name'] }}} This happens even though the string is not matched by `fkmodel__m2mmodel__name`, only by `id`. This might not be clear, this is what the model relations look like: {{{ (Model SearchedModel) --ForeignKey--> (Model FKModel) --ManyToMany--> (Model M2MModel) }}} M2MModel contains the name field that I have specified in `search_fields`. This might or might not be related to #15559. I have tested this against 1.3, yesterday's 1.3.X, and yesterday's dev and it is broken in all of them. (today is 10 Aug 2011) ",Bug,closed,contrib.admin,dev,Normal,fixed,search_fields m2m duplicate duplicates,cheater00@… Timothy Schilling,Accepted,1,0,0,1,0,0