Thanks for the hint on get_field(), I had read it, but now I will make sure to update it soon :-)
And here is a backtrace. I can even trigger it by running ./manage.py help in my virtual env
Traceback (most recent call last):
File "django_project/manage.py", line 16, in <module>
execute_from_command_line(sys.argv)
File "/Users/mrigal/dev/_virtualenvs/dj-1.7/lib/python2.7/site-packages/django/core/management/__init__.py", line 385, in execute_from_command_line
utility.execute()
File "/Users/mrigal/dev/_virtualenvs/dj-1.7/lib/python2.7/site-packages/django/core/management/__init__.py", line 354, in execute
django.setup()
File "/Users/mrigal/dev/_virtualenvs/dj-1.7/lib/python2.7/site-packages/django/__init__.py", line 21, in setup
apps.populate(settings.INSTALLED_APPS)
File "/Users/mrigal/dev/_virtualenvs/dj-1.7/lib/python2.7/site-packages/django/apps/registry.py", line 108, in populate
app_config.import_models(all_models)
File "/Users/mrigal/dev/_virtualenvs/dj-1.7/lib/python2.7/site-packages/django/apps/config.py", line 202, in import_models
self.models_module = import_module(models_module_name)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/importlib/__init__.py", line 37, in import_module
__import__(name)
File "/Users/mrigal/dev/my.proj/django_project/proj/md/models/__init__.py", line 5, in <module>
from proj.md.models.printers import (
File "/Users/mrigal/dev/my.proj/django_project/proj/md/models/printers.py", line 6, in <module>
from proj.md.models.base import (
File "/Users/mrigal/dev/my.proj/django_project/proj/md/models/base.py", line 203, in <module>
class AbstractmdSetItem(mdUpdateModelMixin, models.Model):
File "/Users/mrigal/dev/my.proj/django_project/proj/md/models/meta.py", line 33, in __new__
cls.post_new(model, attrs)
File "/Users/mrigal/dev/my.proj/django_project/proj/md/models/meta.py", line 83, in post_new
set_item_field_names = model._meta.get_all_field_names()
File "/Users/mrigal/dev/_virtualenvs/dj-1.7/lib/python2.7/site-packages/django/db/models/options.py", line 432, in get_all_field_names
cache = self.init_name_map()
File "/Users/mrigal/dev/_virtualenvs/dj-1.7/lib/python2.7/site-packages/django/db/models/options.py", line 445, in init_name_map
for f, model in self.get_all_related_m2m_objects_with_model():
File "/Users/mrigal/dev/_virtualenvs/dj-1.7/lib/python2.7/site-packages/django/db/models/options.py", line 563, in get_all_related_m2m_objects_with_model
cache = self._fill_related_many_to_many_cache()
File "/Users/mrigal/dev/_virtualenvs/dj-1.7/lib/python2.7/site-packages/django/db/models/options.py", line 577, in _fill_related_many_to_many_cache
for klass in self.apps.get_models():
File "/Users/mrigal/dev/_virtualenvs/dj-1.7/lib/python2.7/site-packages/django/utils/lru_cache.py", line 101, in wrapper
result = user_function(*args, **kwds)
File "/Users/mrigal/dev/_virtualenvs/dj-1.7/lib/python2.7/site-packages/django/apps/registry.py", line 168, in get_models
self.check_models_ready()
File "/Users/mrigal/dev/_virtualenvs/dj-1.7/lib/python2.7/site-packages/django/apps/registry.py", line 131, in check_models_ready
raise AppRegistryNotReady("Models aren't loaded yet.")
django.core.exceptions.AppRegistryNotReady: Models aren't loaded yet.
I also wouldn't know what to add to app.ready(), since the models themselves import their abstract base classes which include themselves the metaclasses.
Best,
Matthieu