Django for Professionals
$39.00
Minimum price
$39.00
Suggested price

Django for Professionals

Production websites with Python & Django

About the Book

Once you have learned the basics of Django there is a massive gap between building simple "toy apps" and what it takes to build a "production-ready" web application suitable for deployment to thousands or even millions of users.

In the book you’ll learn how to:

  • Build a Bookstore website from scratch
  • Use Docker and PostgreSQL locally to mimic production settings
  • Implement advanced user registration with email
  • Write comprehensive tests
  • Adopt advanced security and performance improvements
  • Add search and file/image uploads

If you want to take advantage of all that Django has to offer, Django for Professionals is a comprehensive best practices guide to building and deploying modern websites.

Reviews

"If you’re looking for a guide into the world of Django, then the three-step of Django for Beginners, Django for APIs, and Django for Professionals is ideal: get up and running, get into APIs, which are a cornerstone of modern app development, and then add the bits you need to your fledging app into production, from databases and static files, to user accounts and security. It’s a long road. Will’s books are an awesome companion."—CARLTON GIBSON, Django Fellow and Django REST Framework core contributor

"When readers interested in web development ask me what to read next after Python Crash Course, I refer them to Will's books: Django for Beginners, Django for APIs, and Django for Professionals. I highly recommend you check out his work."—ERIC MATTHES, author of Python Crash Course

"Will's books are a fantastic resource for web development with Django and Python. I highly recommended them.”—JEFF TRIPLETT, Python Software Foundation Director, DEFNA President, and REVSYS Partner

About the Author

William S. Vincent
William S. Vincent

William S. Vincent is the author of Django for Beginners, Django for APIs, and Django for Professionals. Previously an early employee at Quizlet, he has used Django at multiple early-stage startups in the Boston area and taught computer science at Williams College. He writes regularly about Python and Django at wsvincent.com.

Bundles that include this book

$117.00
Suggested Price
$97.00
Bundle Price

Table of Contents

  • Introduction
    • Prerequisites
    • Book Structure
    • Book Layout
    • Text Editor
    • Conclusion
  • Chapter 1: Docker
    • What is Docker?
    • Containers vs. Virtual Environments
    • Install Docker
    • Docker Hello, World
    • Django Hello, World
    • Pages App
    • Images, Containers, and the Docker Host
    • Git
    • Conclusion
  • Chapter 2: PostgreSQL
    • Starting
    • Docker
    • Detached Mode
    • PostgreSQL
    • Settings
    • Psycopg
    • New Database
    • Git
    • Conclusion
  • Chapter 3: Bookstore Project
    • Docker
    • PostgreSQL
    • Custom User Model
    • Custom User Forms
    • Custom User Admin
    • Superuser
    • Tests
    • Unit Tests
    • Git
    • Conclusion
  • Chapter 4: Pages App
    • Templates
    • URLs and Views
    • Tests
    • Testing Templates
    • Testing HTML
    • setUp Method
    • Resolve
    • Git
    • Conclusion
  • Chapter 5: User Registration
    • Auth App
    • Auth URLs and Views
    • Homepage
    • Django Source Code
    • Log In
    • Redirects
    • Log Out
    • Sign Up
    • Tests
    • setUpTestData()
    • Git
    • Conclusion
  • Chapter 6: Static Assets
    • staticfiles app
    • STATIC_URL
    • STATICFILES_DIRS
    • STATIC_ROOT
    • STATICFILES_FINDERS
    • Static Directory
    • Images
    • JavaScript
    • collectstatic
    • Bootstrap
    • About Page
    • Django Crispy Forms
    • Tests
    • Git
    • Conclusion
  • Chapter 7: Advanced User Registration
    • django-allauth
    • AUTHENTICATION_BACKENDS
    • EMAIL_BACKEND
    • ACCOUNT_LOGOUT_REDIRECT
    • URLs
    • Templates
    • Log In
    • Log Out
    • Sign Up
    • Admin
    • Email Only Login
    • Tests
    • Social
    • Git
    • Conclusion
  • Chapter 8: Environment Variables
    • environs[django]
    • SECRET_KEY
    • DEBUG and ALLOWED_HOSTS
    • DATABASES
    • Git
    • Conclusion
  • Chapter 9: Email
    • Custom Confirmation Emails
    • Email Confirmation Page
    • Password Reset and Password Change
    • Email Service
    • Git
    • Conclusion
  • Chapter 10: Books App
    • Models
    • Admin
    • URLs
    • Views
    • Templates
    • object_list
    • Individual Book Page
    • context_object_name
    • get_absolute_url
    • Primary Keys vs. IDs
    • Slugs vs. UUIDs
    • Navbar
    • Tests
    • Git
    • Conclusion
  • Chapter 11: Reviews App
    • Foreign Keys
    • Reviews model
    • Admin
    • Templates
    • Tests
    • Git
    • Conclusion
  • Chapter 12: File/Image Uploads
    • Media Files
    • Models
    • Admin
    • Template
    • Next Steps
    • Git
    • Conclusion
  • Chapter 13: Permissions
    • Logged-In Users Only
    • Permissions
    • Custom Permissions
    • User Permissions
    • PermissionRequiredMixin
    • Groups & UserPassesTestMixin
    • Tests
    • Git
    • Conclusion
  • Chapter 14: Search
    • Search Results Page
    • Basic Filtering
    • Q Objects
    • Forms
    • Search Form
    • Git
    • Conclusion
  • Chapter 15: Performance
    • django-debug-toolbar
    • Analyzing Pages
    • select_related and prefetch_related
    • Caching
    • Indexes
    • django-extensions
    • Front-end Assets
    • Git
    • Conclusion
  • Chapter 16: Security
    • Social Engineering
    • Django updates
    • Deployment Checklist
    • docker-compose-prod.yml
    • DEBUG
    • Defaults
    • SECRET_KEY
    • Web Security
    • SQL injection
    • XSS (Cross Site Scripting)
    • Cross-Site Request Forgery (CSRF)
    • Clickjacking Protection
    • HTTPS/SSL
    • HTTP Strict Transport Security (HSTS)
    • Secure Cookies
    • Admin Hardening
    • Git
    • Conclusion
  • Chapter 17: Deployment
    • PaaS vs IaaS
    • WhiteNoise
    • Media Files
    • Gunicorn
    • Heroku
    • Deploying with Docker
    • heroku.yml
    • Heroku Deployment
    • SECURE_PROXY_SSL_HEADER
    • Heroku Logs
    • Heroku Add-ons
    • Conclusion
  • Conclusion
    • Learning Resources
    • Feedback

The Leanpub 45-day 100% Happiness Guarantee

Within 45 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

See full terms

Do Well. Do Good.

Authors have earned$10,891,199writing, publishing and selling on Leanpub, earning 80% royalties while saving up to 25 million pounds of CO2 and up to 46,000 trees.

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers), EPUB (for phones and tablets) and MOBI (for Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF, EPUB and/or MOBI files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub