OE1-5.4 Django
You can build a Django application using models, templates and URL configuration, connect a supported database, modify and improve templates, and create a form.
Django's models-templates-views separation is the same structure-versus-presentation discipline from Unit 1 applied to a whole application, and it is why a Django project stays navigable as it grows. The model layer is the part worth most attention: define your data once in Python and the framework generates the database schema and an admin interface from it. Forms deserve care because they are where user input — and therefore most security problems — enters the system.
Work through these
Introduction to Django
The first server-side framework in the course, and its overall shape. The separation between data, presentation and routing is the idea to hold on to.
Models
Describing your data as classes and letting the framework create the tables. It is where most of the design effort in such an application actually goes.
Templates
The presentation layer, kept deliberately limited so that logic stays out of it. That restriction is a feature, and it takes some getting used to.
Supported databases
What can sit underneath, and the fact that the code above mostly does not care. Portability across databases is one of the framework's real benefits.
URL configuration
Mapping addresses to code, which is how a request finds its handler. It is the routing half of the separation mentioned above.
Modifying and improving templates
Making the presentation layer reusable through inheritance and inclusion. It is the difference between a maintainable site and a copied one.
Creating a form and validating input
Taking input and checking it, which closes the loop from the forms item in the first topic. Never trusting what arrives is the security lesson to carry.
Sign in to keep your progress.
Free resources
We haven't checked most of these for screen reader use yet.
Links last checked 30 Aug 2026.
Stuck here?
Ask a mentor. A real person answers, and they can see exactly which topic you're on. Usually within a couple of working days.
Checking your session…
Topics shown in module order.