
Introduction video to How to build a REST API using Python & Django REST Framework. In this video I explain what the course is about and who it is for.
In this lesson I'll break down each section of the course for a high-level overview of what you'll learn.
To build our REST API we are going to use Vagrant, VirtualBox, Atom, Python, Git, Django and Django REST Framework. In this lesson I explain how these will work together to create our REST API.
In this lesson I'll briefly go over the differences between Docker and Vagrant, and WHY we'll be using Vagrant in this course.
In this lesson I explain the teaching style and how best to take this course.
This lesson outlines the process you should use to get help from me, the instructor, in this course.
In this lesson I show you how to install all of the applications required for this course using Windows. If you already have these tools installed or you know how to install them yourself then feel free to skip this lesson.
Just make sure you have Vagrant, VirtualBox, Atom, Git-SCM and ModHeader (a chrome extension) installed. You can find the links to each one in the resources.
In this lesson I show you how to install all of the applications required for this course using macOS. If you already have these tools installed or you know how to install them yourself then feel free to skip this lesson.
Just make sure you have Vagrant, VirtualBox, Atom, Git-SCM and ModHeader (a chrome extension) installed. You can find the links to each one in the resources.
In this lesson I'll explain how to create a local workspace where we will be storing all the code for our API.
In this lesson I'll show you how to create a README file for our project and initialise a new Git repository. I'll also show you how to make our first Git commit (something we'll be doing lots of throughout the course).
Update: The official GitHub Python .gitignore file is missing `.vagrant` from the list of ignored files. I've since updated this link to point to an extended version of the original Python.gitignore file which includes this extra item as well as `.sqlite3`. This makes Git ignore the temporary vagrant files and database which would typically be excluded from the git repository. (Thanks Keith for pointing this out!).
In this lesson I'll show you how to create a Vagrantfile which we will use to describe the server we need for our back-end API.
In this lesson I'll teach you how to customise your Vagrantfile to describe a server which has all the required dependencies and settings to build and test our API.
Here I will show you how to start and connect to our development server.
IMPORTANT UPDATE
If you get the "No usable default provider could be found for your system." when running vagrant up, read this:
This is because the latest Vagrant 2.0 is not compatible with the latest VirtualBox 5.2 (as of 2017-10-25). There is an open bug on the Vagrant GitHub (https://github.com/hashicorp/vagrant/issues/9090) and hopefully Hashicorp resolve this soon.
In the mean time, you can resolve this by uninstalling VirtualBox and downloading VirtualBox 5.1 from https://www.virtualbox.org/wiki/Download_Old_Builds
If you have any issues please let me know in the Q&A and I will do my best to resolve it for you.
(Thank you James for pointing this out)
In this lesson I teach you how to run a traditional Python "Hello World" script on our newly created server.
In this lesson, I'll show you how to create a Python Virtual Environment using virtualenvwrapper.
In this lesson I'll show you how to install the required Python packages using Python PIP.
In this lesson I'll show you have to create a new Django project and app using the Django CLI.
In this lesson I'll show you how to enable our newly created app in the Django settings file.
In this lesson I'll show you how to test and commit the changes to Git.
In this lesson I'll introduce you to the concept of Django Models.
Here I'll show you how to create a user database model which we will use to store our user profiles.
In this lesson I'll show you how to create a model manager for our user profile model. This model manager will be used to help Django work with our custom user model.
In this lesson I show you how to set the custom user model in the Django settings.
In this lesson I show you how to create a superuser.
In this lesson I show you how to enable the Django Admin.
In this lesson we test the Django admin in the browser.
In this lesson I show you what an APIView is in the Django REST Framework.
In this lesson I show you how to test the PUT, PATCH and DELETE methods.
Notes:
When on the bottom of the hello-view page, ensure the Raw data tab is selected to see both the PUT and PATCH options.
Welcome to the beginner course on How to Build a REST API from scratch, using Django, Django REST Framework, Python, Vagrant, VirtualBox, Atom, and ModHeaders. You'll also learn how to deploy your dev server to AWS!
This course is made with Django 2.2 and Django REST Framework 3.9.
The skills taught in this course are absolutely essential for creating successful products that users love and can’t live without.
Facebook, Instagram, Snapchat, you name it. These apps all have their own backend REST APIs that handle millions of call requests everyday. You cannot build a successful app without a backend REST API.
Not only is it essential to whatever app or MVP you are building -- the skills you learn in this course will make you a kickass developer in the workplace.
If you’re a front-end developer and you take this course, you’ll be able to “speak backend” with your colleagues and understand what’s going on “under the hood” of all your projects, increasing your confidence and earning the respect of your peers.
If you’re a newbie developer or just starting out in your career, this course will give you a very practical foundation to building your portfolio and increasing your earning potential.
In this course you will learn the best-practice way of building your very own REST API.
You will learn how to create a local development server and test your code each step of the way.
Whether you’re looking to gain a bit of experience with backend development, or you’re looking to create a REST API to turn your app idea into a reality - then this course is for you.
By the end of this course you will have built a fully functioning REST API that can handle:
Creating and updating user profiles.
Login and authentication.
Posting status updates.
Viewing status update feeds.
You’ll also have a solid foundation to understanding one of the most complex components in software development.