"This is the repo of the Django Book - Learning Django Web Development"
Django, written in Python, is a web application framework designed to build complex
web applications quickly without any hassle. It loosely follows the MVC pattern and
adheres to the Don’t Repeat Yourself principle, which makes a database-driven
application efficient and highly scalable, and is by far the most popular and mature
Python web framework.
This book is a manual that will help you build a simple yet an effective Django web
application. It starts by introducing Django, setting it up, and code simple programs. You
will then learn to build your first Twitter-like app. Later on you will be introduced to
HashTags, Ajax to enhance the user interface, and tweets. You will then move on to
create an administration interface, learn database connectivity, and use third-party
libraries. Then you will learn to debug and deploy Django projects, and also get a
glimpse of Django with AngularJS and ElasticSearch. By the end of the book you will be
able to leverage Django framework to develop a fully functional web application with
What this book covers
Chapter 1, Introduction to Django gives you an introduction to MVC web development
frameworks, a history of Django, and explains why Python and Django are the best tools
to use to achieve the aim of this book.
Chapter 2, Getting Started shows how to set up our development environment on
UNIX/Linux, Windows and Mac OS X. We will also see how to create our first project,
and connect it to a database.
Chapter 3, Code Style in Django covers all the basic topics which you would require to
follow such as coding practices for better Django web development, which IDE you
should use, and version control.
Chapter 4, Building Application like Twitter takes you through a tour of the main Django
components, and develops a working prototype for your twitter application.
Chapter 5, Introducing HashTags teaches you to design the algorithm for building a
hashtag model and mechanism to use hashtag in your post.
Chapter 6, Enhancing the User Interface with AJAX will help you enhance the UI
experience using AJAX with Django
Chapter 7, Following and Commenting shows how to create login, logout, and
registration page template. It will also show you how to allow following another user and
displaying the most followed user.
Chapter 8, Creating an Administration Interface, you will learn the features of
Administrator interface using Django’s inbuilt features and how we can show tweets in
customized way with sidebar or pagination enabled
Chapter 9, Extending and Deploying prepares your app for deployment into production
by utilizing various Django frameworks features. It will also show you how to add
support for multiple languages, improve performance by caching, automate testing, and
configure the project for a production environment.
Chapter 10, Extending Django speaks about improving various aspects of our
application, mainly performance and localization. It also teaches how to deploy your
project on a production server.
Chapter 11, Database Connectivity, cover various ways of database connectivity such as
MySQL, NoSQL, PostreSQL and so on, which is required for any database-based
Chapter 12, Using Third-party Packages, talks about open source and how to use and
implement open source third-party packages in your project.
Chapter 13, Art of Debugging, shows how to log and debug your code for better and
efficient coding practice.
Chapter 14, Deploying Django Projects, shows how to move a Django project from
development to a production environment and what are the things that needs to be taken
care off before you go live.
Chapter 15, What's Next, will take you to the next where you will be introduced to the
two most important and preferred components, AngularJS and Elasticsearch, used in the