• Aymeric Augustin's avatar
    Refactored registration of models. · 742ed987
    Aymeric Augustin yazdı
    Got rid of AppConfig._stub. As a side effect, app_cache.app_configs now
    only contains entries for applications that are in INSTALLED_APPS, which
    is a good thing and will allow dramatic simplifications (which I will
    perform in the next commit). That required adjusting all methods that
    iterate on app_configs without checking the "installed" flag, hence the
    large changes in get_model[s].
    
    Introduced AppCache.all_models to store models:
    - while the app cache is being populated and a suitable app config
      object to register models isn't available yet;
    - for applications that aren't in INSTALLED_APPS since they don't have
      an app config any longer.
    
    Replaced get_model(seed_cache=False) by registered_model() which can be
    kept simple and safe to call at any time, and removed the seed_cache
    argument to get_model[s]. There's no replacement for that private API.
    
    Allowed non-master app caches to go through populate() as it is now
    safe to do so. They were introduced in 1.7 so backwards compatibility
    isn't a concern as long as the migrations framework keeps working.
    742ed987
Adı
Son kayıt (commit)
Son güncelleme
..
__init__.py Loading commit data...
models.py Loading commit data...
tests.py Loading commit data...