Exercise 3: The INSTALLED_APPS Gotcha — Possible Solution ==================================================================== WHAT BREAKS WITHOUT REGISTERING THE APP ------------------------------ Per this chapter, an app that isn't listed in INSTALLED_APPS won't have its models picked up by Django's migration system, and its templates or static files won't be found when the app tries to reference them, even though the app's own files still physically exist in the project directory. WHY THE RESULTING ERROR CAN BE CONFUSING ------------------------------ Rather than a direct, clear message like "app not registered," the actual error Django surfaces is often something indirect - for example, a "template does not exist" error when trying to render a page, or migrations simply not detecting new models at all - without pointing specifically at the missing INSTALLED_APPS entry as the root cause. A developer debugging the symptom (a missing template, an absent migration) could spend real time investigating the wrong thing before realizing the actual cause is upstream, in settings.py. WHY THIS WORKS AS AN ANSWER ------------------------------ It correctly explains that both migrations and template/static file lookup depend on an app being registered in INSTALLED_APPS, and correctly identifies that the resulting errors point at symptoms (missing templates, undetected models) rather than directly naming the actual missing registration as the cause, which is exactly why this chapter calls it a common and confusing first mistake.