
Acquire basic python knowledge to begin this course; we will cover django and django's test framework fundamentals. Install python from python.org, using python 3.9 here and 3.10 as the latest.
Learn to build a blog application with Django, Django REST Framework, and React frontend using Jangle, implementing article create, edit, delete, authentication (login and registration), pagination, and deployment to Haruko.
Create and configure Django apps to organize project functionality, using manage.py startapp, structuring migrations, models, and views, and registering apps in settings for admin access.
Learn how to implement a function-based view in Django that takes a web request and returns a web response, and map it to URLs using path and include.
Explore Django model relationships, including many-to-one, one-to-one, and many-to-many, with practical examples linking category to article, place to restaurant, and article to publication.
Register the article model in the Django admin panel using admin.site.register, then customize with a ModelAdmin showing title, published, and author, plus date hierarchy and search fields.
Learn to create dynamic slugs for articles in Django by using the post_save signal and a signal receiver to auto generate and save slugs based on the article title.
Retrieve articles from the database in a Django view and render them with a for loop in a template, displaying title, description, and author on the homepage.
Add a Bootstrap navbar to the Django blog app by embedding a Bootstrap component into the base template and configuring home, about, login, register, profile, and logout links.
Create a Django article detail page using get_object_or_404 to fetch an article and render its title (as a link), published date, author, and description in a detail template.
Create a Django registration system using crispy forms and bootstrap, with a password-confirmation flow, validation, and a view to register users and enable login.
Learn to implement Django built-in login with a class-based view, create login templates in a registration directory, use crispy forms, and set login redirect to the article list.
Learn to restrict the navbar in Django by conditionally displaying login and register to guests and profile and logout to authenticated users, using request.user.is_authenticated.
Implement a Django password change flow using the built-in user system, with class-based views, URLs, and templates for change and done, plus crispy forms validation.
Build on the login and registration system to add articles with an article registration form, validate and save articles linked to the user, and redirect to the article list.
Learners add delete and update buttons to article details in a django project and show these buttons only to the authenticated author of each article.
Implement an article update in Django: use a model form, fetch the article with get_object, validate and save changes, then redirect to the article list.
Learn to implement pagination in Django, including setting per-page article counts, handling invalid or empty pages, and building template-based navigation with next and previous links.
Learn how to migrate a Django project to PostgreSQL by configuring psycopg2, updating db settings, running migrations, creating a superuser, and managing content in admin.
Learn to enable social authentication in Django with social-auth-app-django for Facebook, GitHub, and LinkedIn, including settings, templates, and migrations.
Build a chat bot for Django with Django REST Framework and a React frontend, integrating a chat widget into a blog app and demonstrating basic chat interactions.
Learn how to create a follow-up intent with training phrases and responses, configure yes and follow-up paths, and handle programming book booking and cancellation flows.
Learn to integrate Dialogflow with Kommunicate for a Django rest framework and React frontend, including creating a Google Cloud service account and uploading the key to Kommunicate.
Update a Django blog app from 3.2.7 to Django 4, upgrade packages with updated requirements, and verify local and Oracle deployment while preserving features like authentication, pagination, and Postgres backend.
Explore a deployed question-and-answer app built with Django and DRF, featuring user registration, login, posting and answering questions, per-user edit/delete, profiles, and search.
Create a Django project and a users app, implement a custom user model extending AbstractUser, run migrations, create a superuser, and register the custom user in the admin.
Learn to list all questions in a Django app by building a question list view, wiring URLs, rendering a base template with Bootstrap, and displaying question details and author.
Add a Bootstrap navbar to a Django project, copy and integrate the navbar code, customize items like home, ask question, profile, and login, and style with custom fonts and colors.
Explore retrieving a single question's details in a django app by using get_object_or_404 with a slug, rendering a details template that shows title, body, and posted by.
Learn how to restrict the navbar for unauthenticated users by using request.user and is_authenticated to display login, register, home, questions, log out, and profile menu options according to authentication status.
Learn to create questions in a django app by building a title and body form, saving with author, and redirecting to the question list.
Create new answers for a question using a form, validate the input, save the answer, and redirect to the question details page to reflect the update.
Update a question in a Django app using a model form with title and body fields, handling the update in a view and rendering a crispy forms update template.
Learn to implement a delete question feature in Django by creating a view, fetching the target question with get object 404, deleting it, and redirecting to the question list.
This lecture demonstrates updating an answer using a Django model form, validating inputs, and redirecting to the answer details page, with a dedicated update view and template.
Edit account information in a Django app by using a profile form for the built-in user model (first name, last name, username, email), processing post requests and showing flash messages.
Improve search functionality by reading request.GET, using a Q object to filter the question list by titles containing the query, and ordering results by created date in a case-insensitive way.
Update a question-and-answer app from Django 3.2.7 to Django 4.0, updating dependencies in requirements.txt. Later, deploy the updated project to Python Anywhere.
Explore Django rest framework fundamentals by building function-based and class-based API views, viewsets, routers, and authentication. Deploy to heroku and migrate from sqlite to postgres while managing articles and users.
Create dynamic slugs by using Django signals to automatically generate a slug from the article title, leveraging a signal receiver, sender, and app integration.
Create a model serializer from the article model, mapping fields like title and description, or all fields, with automatic field generation, validators, and create/update behavior.
Create a Django API view to list and create articles using serializers, then implement detail, update, and delete operations, apply csrf exemption for testing, and wire urls.
Learn how to override the perform_create method in Django REST framework to assign the author automatically when posting new articles, ensuring correct ownership across users.
Migrate a Django app from SQLite to Postgres by updating settings and installing the required library, then run migrations and create a superuser. Push changes and verify data after deployment.
Update the Django REST Framework project to Django 4.0, upgrade DRF compatibility, switch to DG Restart, migrate Postgres, and validate registration, login, and article APIs with a React frontend.
Update your django rest framework project to django 4 and drf 3.13.1, then deploy from GitHub to Heroku with automatic deployment, adjusting settings and cors origins.
Create a django q&a app by modeling a question with title, body, slug, and user, and an answer linked to the question; migrate, register admin, and use signals for slug.
Learn to implement django signals and receivers to automate question creation, importing user and question models, creating a question with a title and body, and verify in admin.
Learn to implement custom permissions in Django REST Framework to restrict update and delete actions to resource owners. Use has_permission and has_object_permission in a practical example.
Explore how json web tokens enable token-based authentication without database validation in django rest framework. Configure simplejwt, obtain and refresh access tokens, and protect endpoints with bearer authorization.
Upgrade to Django 4 and DRF 3.13, remove the Django restart, clone and push to GitHub, then deploy to Oracle using bash, virtualenv, Python 3.9, and install requirements.
Welcome to Django & Django REST Framework with React Frontend , so first of all what is Django ?
What is Django ?
Django is a Python Web Framework that is used for web development. Django framework uses a set of design principles that produces one of the most productive web development processes compared to many other web frameworks. also Django provides a set of tightly integrated components. all of these components are developed by the Django team itself, you can use Django as a Full stack Web Framework, it means that you can build frontend an backend in Django, or you can just build your backend REST API using Django REST Framework and you can integrate that with any frontend frameworks and libraries like reactjs, vuejs or mobile frontend like react native.
What is RESTFul API's ?
A RESTful API acts as a translator between two machines communicating over a Web service. If your familiar with the concept of API This is just like an API but it’s working on a RESTful Web service and the API is used by two applications trying to communicate with each other over a network or Internet. Web developers program REST API that server can receive data from applications. These applications can be web-apps, Android/iOS apps, etc. RESTful APIs return JSON files which can be interpreted by a variety of devices.
What is Django REST Framework ?
Django REST framework is a powerful and flexible toolkit for building Web APIs. Some reasons you might want to use REST framework:
The Web browsable API is a huge usability win for your developers.
Authentication policies including packages for OAuth1a and OAuth2.
Serialization that supports both ORM and non-ORM data sources.
Customizable all the way down – just use regular function-based views if you don’t need the more powerful features.
Extensive documentation, and great community support.
Used and trusted by internationally recognized companies including Mozilla, Red Hat, Heroku, and Eventbrite.
What is React ?
React is a free and open-source front-end JavaScript library for building user interfaces based on UI components. It is maintained by Meta and a community of individual developers and companies. React can be used as a base in the development of single-page or mobile applications
This course is divided in to different parts, in the first part we are going to have introduction to the course, in the second part we are going to build a blog application using django, in this section we focus on fundamental concepts of django, also we deploy our django app to Heroku, in the third part we are going to build a Chatbot using Google DialogFlow and after that we integrate our Chatbot with Django Blog Application. in the fourth part we are going to build a question and answer app and we deploy our app to PythonAnyWhere. in the fifth part we are going to dive in to building backend REST API using Django and Django REST Framework, we focus on fundamental concepts of Django REST Framework, also we deploy our Django REST Framework to Heroku. in the sixth part we create our backend REST API for our question and answer app, also we deploy our DRF in the PythonAnyWhere, in the seventh part we are going to integrate our Backend REST API with React Frontend.