Django for Beginners (5th Edition) (Book)
Django for Beginners (5th Edition)
Build Modern Web Applications with Python
About the Book
Build six real-world Django websites from scratch with authentication, content management systems, tests, permissions, and production-ready deployment.
Django for Beginners is the fifth edition of the leading guide to building real-world web applications with Python. It takes a practical approach, introducing concepts through six projects designed to simulate real-world scenarios. From a Hello World website to a message board application, a blogging platform, and a newspaper CRM, you'll learn about Django's architecture and how to add new functionality step-by-step. Coverage includes best practices, enhanced testing, and a detailed deployment guide to ensure you're ready for real-world web development challenges.
- Updated for Django 5 and Python 3.12
- Master Django fundamentals, including models, ORM, views, templates, URLs, settings, forms, and authentication
- Deploy your website into production and toggle between local and production environments seamlessly
- Write robust tests and utilize environment variables for enhanced security
- Implement custom authentication: signup, login, logout, password change, and password reset
- Integrate powerful third-party Django packages to improve key functionality
New to this edition: This fifth edition is completely revised to reflect the latest Django release and current best practices. New and updated coverage includes function and class-based views, a Company Website project to cover templates and template contexts in depth, an updated deployment guide, and the latest versions of all third-party Django packages.
Reviews
"The perfect introduction to the Django web framework."—CARLTON GIBSON, Django Fellow and Django REST Framework co-maintainer
"My go-to recommendation whenever anyone asks how to learn Django. If you are looking for one book to master Django, this is it!"—Anna Makarudze, Django Software Foundation President
"When readers interested in web development ask me what to read next, I refer them to Django for Beginners. I highly recommend you check out this book!" —Eric Matthes, author of Python Crash Course
"A fantastic on-ramp to this brilliant web framework, Django for Beginners doesn't just talk about building websites with Django; it walks you through six of them. Get in the reps!" —Adam Johnson, Django Steering Council member
"A masterful step-by-step guide to Django covering all the fundamentals, testing, and deployment." —Jeff Triplett, Python Software Foundation Director and REVSYS Partner
Bundles that include this book
Table of Contents
- Foreword
-
Chapter 0: Introduction
- Why Learn Django?
- Prerequisites
- What’s New in Django 5
- Book Structure
- Book Layout
- Advice on Getting Stuck
- Community
- Conclusion
-
Chapter 1: Initial Set Up
- The Command Line
- Shell Commands
- Install Python 3 on Windows
- Install Python 3 on Mac
- Python Interactive Mode
- Virtual Environments
- PyPI (Python Package Index)
- Install Django
- First Django Project
- The Development Server
- Text Editors
- VSCode Configurations
- Install Git
- Conclusion
-
Chapter 2: Hello, World Website
- How the Internet Works
- How Web Frameworks Work
- Django Architecture
- Model-View-Controller vs Model-View-Template
- Initial Set Up
- Migrations
- Create An App
- Your First View
- URL Dispatcher
- Git
- Conclusion
-
Chapter 3: Personal Website
- Initial Set Up
- Homepage
- Function-Based View About Page
- Templates
- URL Dispatcher
- The Django Template Language
- Template Context
- Tests
- Git and GitHub
- Conclusion
-
Chapter 4: Company Website
- Initial Set Up
- Project-Level Templates
- Function-Based View and URL
- Template Context, Tags, and Filters
- Class-Based Views and Generic Class-Based Views
- TemplateView
- get_context_data()
- Template Inheritance
- Named URLs
- Tests
- Git and GitHub
- Conclusion
-
Chapter 5: Message Board Website
- Initial Set Up
- Databases
- Django’s ORM
- Database Model
- Activating Models
- Django Admin
- Function-Based View
- Templates and URLs
- ListView
- Initial Commit
- Tests
- GitHub
- Conclusion
-
Chapter 6: Blog Website
- Initial Set Up
- Blog Post Models
- Primary Keys and Foreign Keys
- Admin
- Views
- URLs
- Templates
- Static Files
- Individual Blog Pages
- get_absolute_url()
- Tests
- Git
- Conclusion
-
Chapter 7: Forms
- ListView and DetailView
- Mixins
- CreateView
- UpdateView
- DeleteView
- Tests
- Conclusion
-
Chapter 8: User Accounts
- Log In
- Updated Homepage
- Log Out Link
- Sign Up
- Sign Up Link
- GitHub
- Conclusion
-
Chapter 9: Newspaper Project
- Initial Set Up
- Git
- User Profile vs Custom User Model
- AbstractUser
- Forms
- Superuser
- Tests
- Git
- Conclusion
-
Chapter 10: User Authentication
- Templates
- URLs
- Admin
- Tests
- Git
- Conclusion
-
Chapter 11: Bootstrap
- Pages App
- Tests
- Testing Philosophy
- Bootstrap
- Signup Form
- Git and requirements.txt
- Conclusion
-
Chapter 12: Password Change and Reset
- Password Change
- Customizing Password Change
- Password Reset
- Custom Templates
- Try It Out
- Git
- Conclusion
-
Chapter 13: Articles App
- Articles App
- URLs and Views
- Detail/Edit/Delete
- Create Page
- Additional Links
- Git
- Conclusion
-
Chapter 14: Permissions and Authorization
- Improved CreateView
- Authorizations
- Mixins
- LoginRequiredMixin
- UpdateView and DeleteView
- Template Logic
- Git
- Conclusion
-
Chapter 15: Comments
- Model
- Admin
- Template
- Comment Form
- Comment View
- Comment Template
- Comment Post View
- New Comment Link
- Git
- Conclusion
-
Chapter 16: Deployment
- Hosting Options
- Web Servers and WSGI/ASGI Servers
- Deployment Checklist
- Static Files
- Middleware
- Environment Variables
- DEBUG and ALLOWED_HOSTS
- SECRET_KEY, and CSRF_TRUSTED_ORIGINS
- DATABASES
- Gunicorn and Procfile
- requirements.txt
- Heroku Setup
- Deploy with Heroku
- Additional Security Steps
- Conclusion
-
Chapter 17: Conclusion
- Learning Resources
- 3rd Party Packages
- Python Books
- Feedback
The Leanpub 60 Day 100% Happiness Guarantee
Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.
Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.
You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!
So, there's no reason not to click the Add to Cart button, is there?
See full terms...
Earn $8 on a $10 Purchase, and $16 on a $20 Purchase
We pay 80% royalties on purchases of $7.99 or more, and 80% royalties minus a 50 cent flat fee on purchases between $0.99 and $7.98. You earn $8 on a $10 sale, and $16 on a $20 sale. So, if we sell 5000 non-refunded copies of your book for $20, you'll earn $80,000.
(Yes, some authors have already earned much more than that on Leanpub.)
In fact, authors have earnedover $14 millionwriting, publishing and selling on Leanpub.
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) and EPUB (for phones, tablets and 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