Django Pluggables
The Django framework provides an ecosystem of ‘pluggable’ applications that you can reuse in your own projects. There are literally hundreds of applications that can provide some or all of the functionality you may need for your application and can be plugged in to your project. Not all applications are as easily re-used as others, but before you dive into creating your own appliction, you should check to see if something already exists that may work for your purposes. You should consult with your mentor when you are at this stage of your project.
Goals/Objectives/Outcomes
- Understand the magnitude of the ecosystem of django pluggable applications and how to use them for a project.
- Understand the difficulties one may encounter when using a django applications together in the same project
- Understand how to use packaged versions of pluggable applications in a project setup.py or requirements file
- Understand how to make your own apps more reusable and pluggable for others
Reference Material
- https://www.djangopackages.com/
- https://github.com/nowells/django-pluggables
- https://www.caktusgroup.com/blog/2013/06/12/making-your-django-app-more-pluggable/
- https://pypi.python.org/pypi/django-pluggables/0.1.5
- http://www.slideshare.net/coordt/pluggable-django-application-patterns-pycon-2011
- https://docs.djangoproject.com/en/1.8/intro/reusable-apps/
Measures of Success
- Participant has demonstrated the ability to use external pluggable packages in their own app and install them using setup.py or a requirements file
- Participant has created their own app in a reusable way and shared it with their mentor or other participants for reuse