eLearning Platform (chapters 12-17): Create an eLearning platform including a CMS
Build course models
Create and use data fixtures
Use model inheritance to create polymorphic Content
Create a custom model field to order course contents
Implement authentication views
Build a content management system using class-based views and mixins
Restrict access using groups and permissions
Build formsets to manage course contents
Create drag-and-drop functionality to reorder content in-place using JavaScript and Django
Using generic mixins from django-braces
Implement public views and student enrolment views
Render different type of contents and use django-embed-video
Cache content using the cache framework
Use the Memached and Redis cache backends
Monitor Redis using django-redisboard
Build an API using Django REST Framework
Create serializers for models and custom API views
Handle API authentication and permissions
Build API viewsets and routers
Consume your API using Python requests
Create a real-time chat server using Django Channels
Implement a WebSocket consumer/client using Django and JavaScript
Use Redis to set up a channel layer
Make your WebSocket fully-asynchronous
Create settings for multiple environments
Configure a production environment using Docker Compose with PostgreSQL, Redis, Nginx, uWSGI and Daphne
Serve your project securely through HTTPS
Use the Django system check framework
Build a custom middleware
Create custom management commands