• Post category:StudyBullet-17
  • Reading time:6 mins read

Django REST framework for absolute beginners
Learn how to build a Web APIs with Django REST framework in a very clear and easy way

What you will learn

Create a Django project

Add apps to the project

Make the migrations and update the database

Use the Django administrative panel to populate the database

Customize the views to the admin

Create the serializers for our models

Create the views to handle the client request

Test the app with Postman

Make the code clean using class based views

Make the code cleaner using mixins and generics

Description

Django REST framework is a powerful and flexible toolkit for building HTTP enabled service APIs that expose service and data. It can be consumed by a broad range of clients including browsers, mobiles, desktop and tablets. As it is HTTP service, so it can reach a broad range of client.

Django is a back-end framework used by Python developers to develop back-end applications. Django REST framework is used build Web APIs with Django

This course will take you in a step-by-step way to build your own Web APIs with Django REST framework

By taking this course you will have the required skills that you need to build real applications using Django REST framework and to learn advanced topics about Django REST framework


Get Instant Notification of New Courses on our Telegram channel.

Noteβž› Make sure your π”ππžπ¦π² cart has only this course you're going to enroll it now, Remove all other courses from the π”ππžπ¦π² cart before Enrolling!


Requirements for this Course:

  • Basic Python knowledge

Who this course is for:

  • The course is python developers who wants to start learning web development with Django and Django rest framework
  • This course is ideal for people who wish to build their own web APIs that can be connected to a Front-end application developed with a Front-end framework like React or Angular

What you’ll learn

  • Django project structure
  • Admin site in a Django project
  • Class based views
  • Generic views
  • Implementing CRUD operations
English
language

Content

Add-On Information:

  • Course Overview

    • Embark on a guided journey into the world of Web APIs using Django REST framework, a powerful toolkit for building robust web services with Python and Django.
    • Understand the fundamental role of APIs in modern application development, enabling seamless communication between various software components and clients like mobile apps or single-page applications.
    • Demystify the core architectural principles of REST (Representational State Transfer) and how they form the backbone of scalable and maintainable web services.
    • Learn to structure your projects effectively, establishing a solid foundation for future growth and collaborative development practices.
    • Gain a conceptual understanding of how data flows from your database, through your Django application, and is exposed as structured API endpoints for external consumption.
  • Requirements / Prerequisites

    • Basic Python Proficiency: Familiarity with Python syntax, data types, control structures, and function definitions is essential to grasp the course material effectively.
    • Fundamental Django Knowledge: A basic understanding of Django’s core concepts, such as models, URLs, and the ORM (Object-Relational Mapper), will be highly beneficial, though the course aims to be accessible to those with minimal exposure.
    • Web Basics Acumen: A general comprehension of how the web works, including HTTP methods (GET, POST, PUT, DELETE) and the client-server interaction model.
    • Code Editor: Access to a code editor like VS Code, PyCharm, or Atom, and a basic understanding of using the command line/terminal for project setup and execution.
  • Skills Covered / Tools Used

    • RESTful API Design Principles: Master the art of designing clean, intuitive, and standard-compliant API endpoints that are easy for other developers to consume and integrate.
    • Data Serialization and Deserialization: Learn to transform complex Django model instances into native Python data types (e.g., dictionaries) that can be easily rendered into JSON or XML, and vice-versa for incoming client data.
    • API Endpoint Creation & Management: Develop the ability to craft various types of API views, handling different HTTP request types (CRUD operations) and ensuring data integrity and validation.
    • Database Interaction via ORM: Efficiently interact with your database using Django’s powerful ORM to perform all necessary Create, Read, Update, and Delete operations through your API.
    • API Testing with Postman: Gain hands-on experience with industry-standard tools like Postman to meticulously test your API endpoints, ensuring they behave as expected under various conditions and inputs.
    • Code Refactoring for Maintainability: Apply best practices using advanced DRF features like mixins and generic views to write concise, reusable, and highly maintainable API code that scales.
    • Development Environment Setup: Practical skills in setting up a Django project from scratch, managing dependencies with pip, and running a local development server for testing.
  • Benefits / Outcomes

    • Confidently Build Web APIs: Emerge with the practical skills and confidence to design and implement your own robust RESTful APIs using Django REST framework from the ground up.
    • Enable Frontend-Backend Communication: Understand how to create the backend infrastructure necessary to power modern web applications built with frameworks like React, Angular, or Vue.js, or mobile applications.
    • Enhance Your Developer Portfolio: Create a tangible project that demonstrates your proficiency in backend development and API creation, making you a more attractive candidate for junior developer roles.
    • Lay a Solid Foundation for Growth: Establish a strong conceptual and practical base in DRF, preparing you for more advanced topics like authentication, permissions, and deployment strategies.
    • Problem-Solving Through API Design: Develop an intuitive understanding of how to break down complex application requirements into logical API endpoints and efficient data structures.
  • PROS

    • Absolute Beginner-Friendly: Designed specifically for those with minimal or no prior DRF experience, ensuring a gentle learning curve with clear, step-by-step explanations.
    • Hands-on Practical Approach: Focuses on building a real-world project from start to finish, solidifying theoretical concepts through direct, practical application.
    • Clear and Concise Instruction: Adheres to the promise of a “very clear and easy way” to learn, breaking down complex topics into digestible lessons for maximum comprehension.
    • Comprehensive Foundational Skills: Covers all essential components needed to get started with building functional and professional-grade APIs.
    • Empowering for Career Advancement: Equips learners with a highly sought-after skill in the rapidly evolving landscape of web development, opening doors to numerous opportunities.
  • CONS

    • Limited Advanced Topics: As an introductory course, it primarily focuses on core concepts and may not delve deeply into highly advanced security implementations, complex deployment strategies, or very large-scale API optimization techniques.

Setting up the project

Setting up our django project

working with the admin site

Accessing admin site
Customizing the admin site

Basics of Django rest framework

Adding Django rest framework to our project
Implementing the serializer class
Implementing the LIST view
Mapping the LIST view to a url
Saving data in the database
Test our application with postman
Getting an object from the database
Updating an object in the database
Deleting an object form the database
Cleaning up our code

Class based views

Updating the LIST and CREATE views by using class based views
Retrieve, update and delete an object using class based views

Mixins classes

Using the LIST and CREATE views of mixins
Using the RETRIEVE, UPDATE and DESTROY views of mixins
Make our code cleaner with mixins classes
Found It Free? Share It Fast!