As we all know, adding (or removing) an apphook, moving a page with an apphook, or change the slug of a page with an apphook or any of it's parents will cause URL resolving issues. For now, a server restart was required and the fact that we don't know the deployment methods of users we can't come up with a generic solution (sidenote: on djeese we solved this because we know exactly how things are deployed, so this IS automatable).
So here's the idea, introduce two new APIs to django CMS core:
Outside the CMS developers can then use those to implement automated systems for their deployment scenario. One such thing (and potentially the "example implementation") could be a redis powered app, where each thread/process (hereafter process) listens to a redis channel. When the signal is fired on any process, it publishes a message in a redis channel and reloads its URLs. All other processes will receive the message and reload their URLs. The beauty is this would work on a single server and a multi server environment. Again, this is just an example and should really not be in core.
Benefits from the current solution:
Drawbacks from the current solution:
Hello! Is there any reference on how this has been fixed / what's the best approach now?
Thanks, this issue is bugging me a lot (my preference is for gunicorn)!
Thanks a lot, I thought that also an "example" implementation had been described somewhere, but I'll try to figure it out myself!