[1.7.x] Fixed #21794 -- Removed deprecation warning for abstract models outside an app.

Backport of e7b9a58b08 from master.
This commit is contained in:
Carl Meyer 2014-11-19 15:56:04 -07:00
parent 50434aebe2
commit ac359dc771
1 changed files with 4 additions and 6 deletions

View File

@ -98,13 +98,11 @@ class ModelBase(type):
msg = (
"Model class %s.%s doesn't declare an explicit app_label "
"and either isn't in an application in INSTALLED_APPS or "
"else was imported before its application was loaded. " %
"else was imported before its application was loaded. "
"This will no longer be supported in Django 1.9." %
(module, name))
if abstract:
msg += "Its app_label will be set to None in Django 1.9."
else:
msg += "This will no longer be supported in Django 1.9."
warnings.warn(msg, RemovedInDjango19Warning, stacklevel=2)
if not abstract:
warnings.warn(msg, RemovedInDjango19Warning, stacklevel=2)
model_module = sys.modules[new_class.__module__]
package_components = model_module.__name__.split('.')