
Set up a django-based pizza delivery e-commerce project by creating and activating a Python virtual environment in VS Code, then learn how to deactivate and reactivate it.
Activate the virtual environment, install Django with pip, and run django-admin startproject to create a new django pizza project in the currents folder, then press enter.
Install an application in a Django project by running Python manage.py start up, naming the app products, and configuring admin, apps, models, tests, and views, then save the installed product.
Configure django project with static and media paths and url patterns, then build a products app with an index view and template, and run the server.
Install django templates and static assets for a pizza e-commerce app, create static folders, copy fonts and images, configure static paths, and render the menu header and footer.
Learn to implement template inheritance in Django by creating a base template with a header and footer, and extending it in index to reuse layout using blocks.
Modify the template to add a logo and favicon, replace the title with the logo, and place the Italy flag icon in the header and footer.
Create a category model with unique name and slug fields, order categories by name, register in admin with prepopulated slug from name, then run migrations and create a superuser.
Define a Django product model with fields name, short description, description, price, slug, image, and a category foreign key, then migrate and run the server to manage products.
Add and manage products in the pizza e-commerce store by creating a media folder, uploading images, and entering titles, short descriptions, descriptions, categories, and prices, then save.
Display products dynamically on the home page by updating the index view to order by category, showing pizza before drinks, and render each product with name, short description, and image.
Display products on the home page with Django's paginator, set the number of products per page, and navigate pages using page objects, has next and has previous links.
Display categories dynamically with a django context processor, importing the category model and ordering by name (descending with minus) to show pizza first in a navigation dropdown.
Implement a products by category view in django, filtering by category slug, enabling pagination, and linking categories on the home page to display items like drinks and pizza.
Map the url path to a Django product detail view that fetches the product by key and displays title, description, price, image, and an add to cart button.
Build the cart page with detail to display shopping cart items, including products, price, quantity, total, and a remove icon, in Django.
Build Django models for carts and cart items with a product foreign key and cascade deletes, include quantity and subtotal, and register in admin, run migrations, and run the server.
Learn to implement shopping cart functionality in Django by creating a cart with a session key, adding products and cart items, managing quantities, and redirecting to the home page.
Create and display cart items on the cart page using a Django function, computing item totals and subtotals, passing cart data via context, and updating totals for multiple items.
Add and subtract quantities in cart items, update prices accordingly, and remove items with the remove icon using cart item links and product IDs.
Remove products from the cart with the remove icon, adjust quantities with minus and plus, and continue shopping to add more pizzas from the home url.
Build a functional checkout page in a Django pizza store by creating checkout.html templates, wiring urls and views, and displaying products, prices, shipping and billing details, and card payments.
Implement a Django context processor named counter to maintain cart item counts across pages. The processor computes cart item quantity and updates the display as items are added.
Build and manage checkout orders with Django models for Order and OrderItem, including forms for customer details, order totals, and admin settings that enforce read-only fields and inline order items.
Design a django checkout form with first name, last name, email, and phone, using a post method with csrf token, then redirect to a thank you page showing order id.
Complete the checkout function by saving customer and order data to the database, creating order items, and redirecting to a thank you page showing the order ID.
Build a Django user registration flow by creating forms.py and using the built-in user creation form with username, password, email, first name, and last name.
Implement registration function by validating and saving the sign up form, then adding the user to the customer group; install crispy forms and bootstrap and run server to test.
Implement the login flow in Django by using the authentication form to validate users, handle post requests, and redirect to home or sign up, linking sign in with account creation.
Implement the Django logout flow using the built-in logout function, sign out URLs, and redirects to the sign-in page, while checking request.user.is_authenticated.
Build a search engine for products by adding a top search input and a view that filters products by name containing the query, and render the results.
Build a Django order history page in the user dashboard with login_required authentication, showing order dates, numbers, prices, statuses, and an invoice PDF.
Build a Django order detail page for a pizza e-commerce app, showing order id, order items, billing and shipping addresses, and options to print or save as pdf.
Overview :
With this comprehensive Django course, designed carefully for developers who want to learn the most popular python web framework Django step by step in order to build e-commerce websites from scratch to deploy. Through this course we tried to explain the foundation in Django’s core concepts like forms, authentication and sessions, after that we focus on building our project step by step by optimizing the MVT architecture in Django from user, Urls, Views, Models and Templates. At the end of this course you will learn the most practical approach to build e-commerce websites in Django efficiently.
What you will learn in this course :
- Project : E-Commerce
- Creating e-commerce website in Django Step by Step from Scratch
- Using built-in functions from Django like forms and Authentication
- Creating Mini-Cart, Cart Page, Checkout without JavaScript using just Python
- Creating Dashboard for user in order to track orders
- Changing the Back-end theme by using Jazzmin Application
- Setup The First Template
- Setup Pizza Template
- Setup Inheritance Template
- Creation Category and Product Model
- Display Categories and Products on Home Page
- Using Pagination
- Creation Single Product Page
- Creation Id Session Cart
- Creation Mini Cart
- Display Cart Items in Mini Cart and Cart Page
- Add Subtract Quantity Items In Cart Pages
- Remove Items In Cart Pages
- Create Checkout Page
- Using Forms in Django
- Using Authentication in Django
- Creation Registration Page in Django
- Creation Login and Logout Functions
- Creation Search Engine Function
- Creation Order History for User
- Creation User Dashboard to Track his Orders
- Print Orders
- Export Orders in PDF
- How to change everything dynamically
- How to customize Admin theme by Jazzmin application
- Authentication and Authorization in Django
By the end of this course you will be able to build any e-commerce project in Django web framework.
You can change your level from beginner to an expert Django web developer.
Learn Django step by step in order to be able to analyze any code in Django and know its purpose in any your project.
You will learn essential things you need in Django to build your real projects.
I hope you will find in this course a tool to improve your full-stack project.
I'm available for any questions .
I'm here to help you as much as I can.
This course helps you starting from scratch all you need is just a computer whatever its features.
The most important thing is the first step and working consistently every day.
If you work hardly you will be an expert web developer in the future.
Search the best place to focus better on this course. The environment is so important to be more productive.
I hope you enjoy with this course. enjoy yourself by learning new things everyday. Good Luck.