Master the advanced features of Django to build professional, manageable web applications.
(enlightening music) - Hello my name is Matthew Nuzum and I am working with Kevin Veroneau to bring you this course, Mastering Django Web Development. Together Kevin and I have ten years experience creating Django based web apps in both the start up and corporate sectors. Some apps we've published handle millions on page views per day and are managed by a team of dedicated developers. The material in this course will help you create better Django web applications and API's as your project gets a little more ambitious.
If you're new to Django consider the video course Learning Django Web Development by me, Matthew Nuzum. However anyone who has created basic Django applications like those shown in the official Django tutorial will find this video helpful. Throughout this course one of the major themes we'll cover is the DRY concept which is fundamental to Django. DRY stands for don't repeat yourself. And it means that we should be writing smart code that can grow with our project. When my early Django projects started to grow in size there was a lot of duplication and poor organization.
It made my code fragile and hard to manage. I learned a lot of lessons the hard way which resulted in wasted effort, poor application performance and sometimes unplanned downtime. With this course you'll learn techniques to help you avoid the same problems. We'll discuss using powerful class based views, custom middleware, creating our own template tags and filters, building a RESTful API, advanced data base modeling, taking control of caching, using model managers, and developing custom managed .py commands.
We won't be creating a single application in this course. Instead we'll focus on specific examples of advanced techniques where each of these techniques can be put to use. If you download the provided sample code, you'll see that there's one Django project per section in the series. This will make it easier for you to experiment with the code and see how it works. In this video series I'll be using Python 2.7. If you have a newer version of Python you will have to make some minor changes to the code but the principles will still apply. The code samples are based on Django 1.8 but should work with newer versions of Django.
Since 1.8 is an LTS version it's a good idea to use it for serious projects since it will receive security updates for quite some time.
Django is one of the world's leading web development platforms. This Python web framework makes your app building experience smoother, faster, and easier. It is a key feature behind the success of many start-ups across the world, including Instagram and Nextdoor. This course introduces next-level advanced concepts to help you build your own professional-grade Django applications.
Author Kevin Veroneau starts off by explaining how class-based views—a powerful, but often poorly understood feature—work in Django. Then learn how to create custom middleware to help organize frequently used code. Have you ever wanted to build a complete RESTful API? Find out how to do just that, starting with a basic read-only API and then adding key-based authentication to allow the full range of CRUD functionality. Plus, discover how to use model managers and the Q method to make it easier to get the data we need to our views and clients.
For the finishing touches, dive into the details of caching to improve application performance, and then add custom management commands to help automate routine tasks.
- Extending class-based views
- Creating custom class-based views
- Managing your database with middleware
- Creating template filters and tags
- Building a RESTful API
- Modeling advanced database relationships and queries
- Using a model manager for your application