- See examples of how to build fully featured web projects using Django 2.0
- Deploy Django with the hottest tech like Docker, AWS, and uWSGI
- Learn Django 2.0 best practices and tips
- Apply the OWASP Top 10 to a web development project
- Setup, keep your data up to date and query using Elastic Search
- Avoid boilerplate and brittle fixtures with FactoryBoy
This project-based guide will help you get a sound understanding of the Django 2.0 through three full-featured applications. It will start off with building a basic IMDB clone and adding users who can register, vote on their favorite movies and upload pictures associated with the movie. You will learn how to use the votes that your users have cast to build a list of the top 10 movies. This book will also take you through deploying your app into the production environment using Docker containers hosted on the server in Amazon's Electric Computing Cloud (EC2).
Next, you're going to build a Stack Overflow clone wherein the registered users can ask and answer questions. You will learn how to let a user who's asking a question be able to accept answers and mark them as useful. You will also learn how to add search functionality to help users find questions by using Elasticsearch. It will help you discover ways to apply the principles of 12 factor apps while deploying Django on the most popular web server, Apache with mod_wsgi. Lastly, you'll build a clone of MailChimp wherein the users will be able to send and create emails and deploy it using AWS.
Get set to take your basic Django skills to the next level with this comprehensive guide!
What You Will Learn
- See how to build new projects from scratch using Django 2.0
- Provide full text search using Elasticsearch and Django 2.0
- Learn Django 2.0 security best practices and how they're applied
- Deploy a full Django 2.0 app almost anywhere with mod_wsgi
- Deploy a full Django 2.0 app to AWS's PaaS Elastic Beanstalk
- Deploy a full Django 2.0 app with Docker.
- Deploy a full Django 2.0 app with NGINX and uWSGI
Who This Book Is For
If you are a Python developer who has some basic knowledge of Django then this book is for you.
Table of Contents
Chapter 1. Starting MyMDB
Chapter 2. Adding Users to MyMDB
Chapter 3. Posters, Headshots, and Security
Chapter 4. Caching in on the Top 10
Chapter 5. Deploying with Docker
Chapter 6. Starting Answerly
Chapter 7. Searching for Questions with Elasticsearch
Chapter 8. Testing Answerly
Chapter 9. Deploying Answerly
Chapter 10. Starting Mail Ape
Chapter 11. The Task of Sending Emails
Chapter 12. Building an API
Chapter 13. Deploying Mail Ape