Django is Python web framework that can be used to build web applications. Django is written in Python and you don’t need to use any external libraries or packages while creating web applications. You can add external libraries for making your web applications more cool.
Structure of a Django Website
A Django website consists of a single project that is divided into separate apps. Each app handles a self-contained function that the site needs to perform. For example, there will be app for user management like login, register, logout etc. and many other apps for other functionalities depending upon your application. All this apps will be inside your single project.
There are some configurations that apply to the project as a whole, such as project settings, URLs, shared templates and static files. Each application can have its own database and its own functions to control the data flow. Each application has its own URLs along with its own HTML templates and static files, like CSS.
Django apps support the Model-View-Controller pattern, which is an architecture on which most web frameworks are built. There will be three separate files that handle the three main pieces of logic separately:
- Model – Usually a database, it defines the data structure. Base layer to the application.
- View – displays the data to the user with HTML and CSS.
- Controller – handles how the database and the view interact with each other.
Although Django is based on the MVC pattern, the controller part is handled by Django itself. The user need not worry about making connections between database and views.
To be more specific, Django uses the Model-View-Template (MVT) pattern.
If you want more info on Django, check out their well written documentation.