What this book covers
Chapter 1, An Introduction to Django, starts by getting a Django project set up almost immediately. You’ll learn how to bootstrap a Django project, respond to web requests, and use HTML templates.
Chapter 2, Models and Migrations, introduces Django data models, the method of persisting data to a SQL database.
Chapter 3, URL Mapping, Views, and Templates, builds on the techniques that were introduced in Chapter 1, An Introduction to Django, and explains in greater depth how to route web requests to Python code and render HTML templates.
Chapter 4, An Introduction to Django Admin, shows how to use Django’s built-in Admin GUI to create, update, and delete data stored by your models.
Chapter 5, Serving Static Files, explains how to enhance your website with styles and images and how Django makes managing these files easier.
Chapter 6, Forms, shows you how to collect user input through your website by using Django’s Forms module.
Chapter 7, Advanced Form Validation and Model Forms, builds upon Chapter 6, Forms, by adding more advanced validation logic to make your forms more powerful.
Chapter 8, Media Serving and File Uploads, shows how to further enhance sites by allowing your users to upload files and serve them with Django.
Chapter 9, Sessions and Authentication, introduces the Django session and shows you how to use it to store user data and authenticate users.
Chapter 10, Advanced Django Admin and Customization, continues from Chapter 4, An Introduction to Django Admin. Now that you know more about Django, you can customize the Django admin with advanced features.
Chapter 11, Advanced Templating and Class-Based Views, lets you see how to reduce the amount of code you need to write using some of Django’s advanced templating features and classes.
Chapter 12, Building a REST API, looks at how to add a REST API to Django to allow programmatic access to your data from different applications.
Chapter 13, Generating CSV, PDF, and Other Binary Files, further expands the capabilities of Django by showing how you can use it to generate more than just HTML.
Chapter 14, Testing Your Django Applications, is an important part of real-world development. This chapter shows how to use the Django and Python testing frameworks to validate your code.
Chapter 15, Django Third-Party Libraries, exposes you to some of the many community-built Django libraries, showing how to use existing third-party code to add functionality to your project quickly.
Chapter 16, Using a Frontend JavaScript Library with Django, brings interactivity to your website by integrating with React and the REST API created in Chapter 12, Building a REST API.
Chapter 17, Deploying a Django Application (Part 1 – Server Setup), begins the process of deploying the application by setting up your own server. This is a bonus chapter and is downloadable from the GitHub repository for this book.
Chapter 18, Deploying a Django Application (Part 2 – Configuration and Code Deployment), finishes the project by showing you how to deploy your project to a virtual server. This is also a bonus chapter and is downloadable from the GitHub repository for this book.