Django Unchained – Learn And Master Django

Django is one of the most popular, free, open-source web application framework, written in Python. It follows the MVC(Model-View-Controller) Pattern.

Django’s primary goal is basically to help ease the process of creation of complex, database-driven websites.

Django Web Framework for perfectionists with deadlines

Why is it important to learn Django? 

– It is an open-source framework and these days, open source is the way to go.

– Django, with all the features it provides, is widely and exhaustively tested by the open source community built around it and that means it is easier to write web apps that aren’t susceptible to hacking attempts and security threats.

– You can switch between various databases depending on which works for a particular situation.

– You can build extremely dynamic websites at ease. What takes up 100 lines of code will take up only 10 to 30 lines of code when done in Django.

and there are many more advantages to using Django. As I mentioned in the previous posts, Python is making waves in the tech industry and Django is surely growing alongside. So, let’s get you started on your journey to learn and master Python.

First, I will give you the resources, books you can use to learn Django. Then I will give the specific list of topics and web resources for those topics from where you can learn and refer those topics.

Books To Learn And Master Django:

1. Two Scoops Of Django – Best Practices For Django 1.6

This book is full of material that will help with all your Django projects. It contains all the tips, tricks, techniques, patterns, code snippets, and methodologies that you will need to know in your web development stint with Django.

It covers coding conventions, environment setup, fundamentals, database best practices, forms, etc., in a very detailed manner.

2. Learning Website Development with Django

This book is one of the best books for a beginner in Django. It builds a series of lessons, one after the other each lesson building on whatever was taught in the previous one. These lessons take you from scratch towards building a bookmarking site(like delicious) with tags and ajax implementation. Easy to read and pretty neatly written. This book will help you very much if you are a beginner who already knows Python.

3. Practical Django Projects

This is one of the widely used books for Django. This book starts with teaching you how to build a basic content management system from scratch using Django, and then extends on the features you have written by following the first few chapters.

The best thing about this book is that it has less than 300 pages.

4. Test Driven Development With Python

This book focuses on web development using Django and JavaScript. It uses the development of a website using the Django web framework as a real world example of how to perform test-driven development (TDD). There is also quite a good amount covered about NoSQL, websockets and asynchronous responses.

Best Free Resources For Django on The Web:

1. Tango with Django

This free online resource is an extensive set of free introductions to getting familiar with Django. A lot of developers have mentioned to me that this book helped them a lot in their initial days of learning the framework. For a lot of them, Django was the first framework that they learnt and this set of tutorials seemed to have helped them by a great deal. It’s recently been updated for Django 1.7! The best place to start will be here.

2. Effective Django

This is another free introduction to the web framework. This is also pretty detailed for the basics that you will need to know before you move on to the advanced techniques in web development with django. This tutorial effectively covers everything you will need to know about dynamic handling, forms, databases, templates, etc.

3. Django by Example

This website consists of a set of tutorials for creating Django projects such as a blog, forum, issue tracker and portfolio. This is a great site if you want to dive right away into developing stuff and you can’t wait no more.

4. Django Girls Tutorial

This is a great tutorial which doesn’t assume any prior knowledge of Python or Django in the readers and starts off from scratch. This tutorial will be of very good assistance to you if you don’t know Python and want to start learning both simultaneously.

5. Django Project Tutorials – Official Documentation

This is the official documentation accompanying tutorials of the Django project, created by its developers to ease your transition from Python into your usage of Django. A great resource to learn from. Of course, a lot of times, you will be coming back to this website in order to refer to syntax, rules and all sorts of stuff when you experience issues in your development process.

Topics You Should Cover:

A word of caution before you dive into the topics section below. Almost in all the books for Django, the topics are interconnected – meaning, you have to go one after the other, in every single book or online tutorial series. So, I will give you the list of essential topics you need to learn and also the links to where you can find them. What you are going to do is, pick one book among the 5 paid and 5 free tutorials/books given above, and stick to it. Starting with ‘Tango with Django’ is the best thing you can do. You can go through the other books and resources once you have completed Tango with Django.

The reason is that, every book and every tutorial series on Django teaches you by making you do a project, albeit a simple one, just to make sure you understand the core concepts of the framework. So, if you randomly jump onto one topic in a link, you may be able to grasp the code and the explanation but if you try to replicate the code, you may not be successful without the code from the previous chapters of that particular book/site. That is the reason why I am asking you to go through one book after the other.

However, since you will need to refer multiple resources to understand each and every concept in-depth, I have added all the best resources for the most important topics that you will need to learn in Django.

1. Getting Ready – Initial Steps To Be Taken:

Learn Django – Introduction

Getting Ready To Tango – Initial Steps

Getting Started – Effective Django

Django Girls Tutorials – Django introduction

2. Django Basics:

Tango With Django – Django Basics


Starting a Django Project

3. Django Models & Databases:

Effective Django – Using Models

Django Models – Girls Tutorial

Effective Django – Databases and Models in detail

Models and Databases – Tango with Django

Django-admin Interface

4. Templates and Views:

Tango With Django – Templates with Views

Class based Views

Views and Templates

Django Views – Time to Create

5. Working with forms:

Djangobook – Forms

Django Girls – Forms

Fun with forms – Tango with Django

Form Basics – Effective Django

Forms in Detail

6. URLs and Advanced Views:

Djangobook – URLconfs and Views

Additional Generic Views – Effective Django

Django Girls Tut – Django URLs

Mapping URLs

7. Cookies and Sessions:

Working with Cookies and Sessions – Tango with Django

Sessions, Users and Registration – Djangobook

Django Cookies

How Sessions Work in Django

8. User Authentication:

Handling Authentication and Authorization

User Authentication in Django

User Authentication with Django – Tango with Django

Randall Degges’ article on User Authentication with Django

9. Middleware:

Middleware – Djangobook

Understanding Middleware in Detail

Middleware – The Django Documentation

10. Deploying Django:

Deploying Django – Djangobook

Deploying your project – Tango with Django

Django Docs – Deploying Django HowTo

Idiomatic guide to deploying Django

There are many other topics that you will be learning. But those topics are the ones that you will learn automatically as you go through the steps in fixing the bugs present in your project. So, good luck with the journey of django mastery. Rock on!

Loading Facebook Comments ...

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>