Introduction
This book follows a hand one approach to learning django by building an ecommerce web application. This book is perfect for a django developer who wants to learn how to make web applications with django quickly without the hassle of integrating with other frontend frameworks.
Outline
Chapter 1 : Introduction
- Prerequisites:
- Why Django
- Virtual Environments
- Your First Django Project
- Django development server
- Django Apps
- Your first django view
- Templates and Urls
- Urls patterns
- Django template engine
- Loops and conditionals in templates
- Template Inheritance
- Static files
Chapter 2 : Database and Models
- Migrations
- Database Relationships
- Dunder methods
- The Django ORM
- Creating objects
- Updating objects
- Deleting objects
- Retrieving objects
- Django Admin
- Generic Views
- ListView
- DetailView
- Generic Editing Views
- CreateView class
- UpdateView
- DeleteView
Chapter 3: Build an Ecommerce Application
- Getting Started
- Custom User
- Product Models
- ProductListView and ProductDetail
- Add to Cart Form
- Add to Cart ViewUpdate Cart Items
- Remove Item from Cart
- Search For Products.
- Advanced Search with Q Objects
- Context Processors
Chapter 4 : CheckOut and Payment Integration
- OrderForm
- Checkout Page
- Crispy Forms
- Stripe Integration
- How Stripe Checkout Works
- Stripe Checkout Example
- Create Order and Make Payment
- Stripe WebHooks
- Stripe CLI
- Webhook Endpoint
- Emails
- Send Emails with MailTrap
CHAPTER 5 Authentication
- UserCreationForm
- Register users
- Login Page
- Logout Users
- Password Reset
- Orders page
- Pagination
- Order Items Page
- Add Products to Wishlist
- Display Wishlist
CHAPTER 6: DEPLOYMENT
- Deployment Checklist
- Environment Variables
- Static Files in Production
- Requirements
- Railway Production Configurations
- Allowed Hosts
- Create a Github Repo and a Railway Account
- Conclusion
- Additional resources