#19212 closed New feature (duplicate)
app_cache_ready signal
Reported by: | Craig de Stigter | Owned by: | nobody |
---|---|---|---|
Component: | Database layer (models, ORM) | Version: | 1.5-alpha-1 |
Severity: | Normal | Keywords: | |
Cc: | flavio.curella@… | Triage Stage: | Unreviewed |
Has patch: | no | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description
This thread on django-users proposed the concept of a signal for when all apps are loaded. We've also come across a use case that requires this.
Basically class_prepared is fired during loading of the app cache. So during handling of class_prepared, ForeignKey.rel.to may not yet be resolved, and that limits what we can do.
So we wrote a 3-line patch which adds a signal that gets fired when the app cache finishes loading.
Because this can't be done outside of core without monkey-patching, I'd say it belongs in core.
Here's another request for this on SO: http://stackoverflow.com/questions/1333019/django-audittrail-lazy-relations
Our 3 line patch: https://github.com/koordinates/django/commit/cfa687409698ab9c5ffd150d0c89aba7d361739f
Change History (2)
comment:1 by , 12 years ago
Resolution: | → duplicate |
---|---|
Status: | new → closed |
comment:2 by , 12 years ago
Cc: | added |
---|
This is a long standing request, but it's not as simple as "just add a signal", because there isn't currently any reliable point at which we can guarantee that all apps have been loaded. To see the historical discussion, search for "App Refactor" or "App loading refactor" in the archives; ticket #3591 is the placeholder for the work.