This is a follow up question to How can I run a django management command by cron job. I'm trying to get a better understanding of the way to organize code, having come from php MVC frameworks.
In php ( lets say codeigniter ) , A URL will activate a specific controller.
The first answer to the above question states:
One option is, you can create a URL endpoint, and the corresponding view would call the management command.
Without much python/django knowledge, it just seems surprising to me that so you have to get a view involved in running an abritrary app or a controller-like piece of code where no output is needed. Is this really the only way to do this in Django? If so why is it structured this way?