﻿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
17678	Model._meta proxy_for_model set up incorrectly	Anssi Kääriäinen	nobody	"There are some places in the code which assume that proxy_for_model creates a proxy chain. That is, if you have models:
{{{
A
Proxy(A)
ProxyProxy(Proxy)
}}}
the expected result is that ProxyProxy._meta.proxy_for_model == Proxy, but this isn't true. One place which makes this proxy-chain mistake is the very place that sets up the proxy_for_model so this seems like a clear bug.

In the attached patch I added ._meta.concrete_class, which is always the concrete class of the model. This simplifies code in some places. In addition, the proxy_for_model correctly creates a proxy chain now.

I think the proxy_for_model error was responsible for one bug in admin, but I haven't verified that there was a bug (so, no tests). In addition there is one place in sql/query.py which is working now as it was before, but I am not sure if the before behavior was in fact correct. Neither of these should be this ticket's problems.

The bug is present in at least 1.3, maybe even before."	Bug	closed	Database layer (models, ORM)	1.3	Normal	fixed		Anssi Kääriäinen	Unreviewed	1	0	0	0	0	0
