Summary
In this chapter, you learned how to use fixtures to provide initial data for models. By using model inheritance, you created a versatile system to manage different types of content for the course modules. You implemented a custom model field to order objects. You also discovered how to use class-based views and mixins. You worked with groups and permissions to restrict access to your views. Finally, you used formsets to manage course modules, and you built a drag-and-drop functionality with jQuery UI to reorder modules and their contents.
In the next chapter, you will create a student registration system. You will also render different kinds of content, and you will learn how to work with Django's cache framework.