Build a Backend REST API with Python & Django - Beginner

Finally create that App & fully-functioning user database in this crash course to building a REST API

  • Mark Winterbottom
  • 4.56
  • (4848 reviews)
  • 5 hrs
  • 76 lectures
  • Udemy
Build a Backend REST API with Python & Django - Beginner

What you will learn?

  • How to create the most important part of any user application
  • How to confidently use some of the most in-demand full stack technologies today
  • How to create a local development server from scratch
  • How to create a brand new Django project with sqlite database
  • How to build your own browsable, self documenting REST API
  • Handle user registration, login, and status updates in your app with your very own REST API

Your trainer

Mark Winterbottom

Hey, I’m Mark! I’m an award-winning full-stack software engineer with a passion for learning and teaching new technologies.

This passion started at 12-years-old when I taught myself how to make Windows batch scripts. Little did I know that hacking around on my computer back then would turn into a life-long passion for programming.

I went on to complete a degree in Computer Systems Networking at Nottingham Trent University, and worked in various developer roles at multinational corporations and startups.

I always believed that the final step to learning is teaching. And so I started a software development blog and consultancy firm called London App Developer. My work has been featured in the Daily Mail, Mashable, TechCrunch, the Huffington Post, the Mirror and Gizmodo, and over 30,000 developers read my programming tutorials every month.

76 lessons

Easy to follow lectures and videos covering subject details.

5 hours

This course includes hours of video material. Watch on-demand, anytime, anywhere.

Certificate of Completion

You will earn a Certificate of Completion at the end of this course.

Course curriculum

  • Introduction01:30
  • Course structure01:55
  • Technologies05:16
  • Vagrant vs. Docker02:53
  • How to get the most out of this course01:06
  • How to get help01:25
  • Windows: Installing Git, VirtualBox, Vagrant, Atom and ModHeader09:22
  • macOS: Installing Git, VirtualBox, Vagrant, Atom and ModHeader07:33
  • Creating a workspace05:12
  • Creating a Git project08:29
  • Pushing to GitHub07:18
  • Creating a Vagrantfile01:47
  • Configuring our Vagrant box03:35
  • Running and connecting to our dev server01:54
  • Running a Hello World script04:03
  • Create Python Virtual Environment03:39
  • Install required Python packages03:10
  • Create a new Django project & app02:39
  • Enable our app in the Django settings file02:14
  • Test and commit our changes03:13
  • What are Django Models?00:38
  • Create our user database model10:56
  • Add a user model manager11:06
  • Set our custom user model01:18
  • Create migrations and sync DB03:41
  • Creating a superuser02:33
  • Enable Django Admin01:15
  • Test Django Admin04:26
  • What is an APIView?02:47
  • Create first APIView07:06
  • Configure view URL05:37
  • Testing our API View02:05
  • Create a Serializer03:44
  • Add POST method to APIView07:38
  • Test POST Function02:28
  • Add PUT, PATCH and DELETE methods04:24
  • Test the PUT, PATCH and DELETE methods03:29
  • What is a Viewset?02:35
  • Create a simple Viewset04:00
  • Add URL Router04:44
  • Testing our Viewset02:27
  • Add create, retrieve, update, partial_update and destroy functions06:42
  • Test Viewset03:49
  • Plan our Profiles API02:12
  • Create user profile serializer08:35
  • UPDATE: Bug in profile serializer01:01
  • Create profiles ViewSet02:39
  • Register profile Viewset with the URL router01:23
  • Test creating a profile04:05
  • Create permission class06:37
  • Add authentication and permissions to Viewset03:35
  • Test new permissions02:27
  • Add search profiles feature02:13
  • Test searching profiles04:15
  • Create login API viewset04:33
  • Test login API02:42
  • Set token header using ModHeader extension05:38
  • Plan profile feed API01:46
  • Add new model Item07:16
  • Create and run model migration02:13
  • Add profile feed model to admin00:56
  • Create profile feed item serializer04:20
  • Create ViewSet for our profile feed item05:50
  • Test Feed API04:15
  • Add permissions for feed API05:35
  • Test feed API permissions03:29
  • Restrict viewing status updates to logged in users only01:42
  • Test new private feed01:19
  • Introduction to deploying our app to AWS00:51
  • Add key pair to AWS03:14
  • Create EC2 server instance02:56
  • Add deployment script and configs to our project11:59
  • Deploy to server04:38
  • Update allowed hosts and deploy changes05:20
  • Course outro01:47
  • FAQs01:14
Online Courses

Learning Django doesn't have to be hard. Here is our curated list of recommended online courses that will guide you step-by-step in the learning process.

Learn more
Books

Are you an avid book reader? Do you prefer paperback, or maybe Kindle version? Take a look at our curated list of Django related books and take yourskills to the next level.

Learn more
YouTube videos

The number of high-quality and free Django video tutorials is growing fast. Check this curated list of recommended videos - there is no excuse to stop learning.

Learn more