Django Template Inheritance Tutorial

This is our sixth article in Django, and in this article we are going to talk about Django Template Inheritance Tutorial. Django Template Inheritance is one of the best features that you can use.

 

 

Read Django Articles

1: Django Introduction & Installation

2: Django Apps & URL Routing 

3: Django Creating Super User

4: Django Templates Introduction

5: Django Models Introduction

 

 

 

What is Django Templates Inheritance ?

Templates tend to have common sections that are equally used across multiple instances. For example, the header and footer sections on all templates rarely change, whether a project has 5 or 100 templates. Other template sections like menus and advertisements also fall into this category of content that’s constant across multiple templates. All of this can lead to repetition over multiple templates, which can be avoided by creating template inheritance. with Django template inheritance you can define common sections on separate templates and reuse them inside other templates. This process makes it easy to create and manage a project’s templates because a single template update takes effect on all templates. reusable Django templates also allow you to define page blocks to override content on a page-by-page basis. This process makes a project’s templates more modular because you define top-level blocks to establish the overall layout and define content on a page-by-page basis.

 

 

 

OK first of all you need to create a project in Django, we have already covered the creation of the Django project in our previous article Django Introduction & Installation. but you can use this command for creating of Django Project.

 

 

 

 

After creation of the Django Project, you need to migrate your Django Project.

 

 

 

Now we need to create an App, you can read the complete article about Django Apps in this link  Django Apps & URL Routing . i have named my App as news, but you can name it what ever you want.

 

 

 

 

Also you need to add your newly created app in the Django settings.py INSTALLED_APPS. make sure that always do this process after creating a new App.

 

 

 

OK before this we have talked that about  how you can use templates in django, you can check this article Django Templates Introduction. but you need to just create a templates folder in your project and you need to add some html files. basically we are going to create three html files. and also don’t forget to add your templates folder in your settings.py DIRS Section.

 

home.html

 

 

 

about.html

 

 

 

contact.html

 

 

You can see that in these three html files, we are duplicating the code, and one of the main concept in Django is DRY(Don’t Repeat Yourself). now for solving of this problem we are going to use django Template Inheritance. basically we are going to create another html file at name of base.html.

 

 

 

 

Now we are going to change our three html files.

 

home.html

 

 

 

about.html

 

 

 

 

contact.html

 

 

 

 

So now open your views.py and we need to add our view functions.

 

 

 

 

Also you need to create your urls, you can read this article for url routing Django Apps & URL Routing . but just create a new python file in your news app at name of urls.py and add these codes.

 

 

 

And also you need to include your app urls.py in your project urls.py file.

 

 

 

 

So now you can run your project and see the urls

 

 

 

http://localhost:8000/

Django Template Inheritance Home Page
Django Template Inheritance Home Page

 

 

 

http://localhost:8000/about/

Django Template Inheritance About Page
Django Template Inheritance About Page

 

 

 

http://localhost:8000/contact/

Django Template Inheritance Contact Page
Django Template Inheritance Contact Page

 

Subscribe and Get Free Video Courses & Articles in your Email

 

Share via
Copy link
Powered by Social Snap
×