django-moderation is reusable application for Django framework, that allows to moderate any model objects.
Possible use cases:
- User creates his profile, profile is not visible on site. It will be visible on site when moderator approves it.
- User change his profile, old profile data is visible on site. New data will be visible on site when moderator approves it.
- configurable admin integration(data changed in admin can be visible on site when moderator approves it)
- moderation queue in admin
- html differences of changes between versions of objects
- configurable email notifications
- custom model form that allows to edit changed data of object
- auto approve/reject for selected user groups or user types
- support for ImageField model fields on moderate object page
- 100% PEP8 correct code
- test coverage > 80%
python 2.7, 3.3+
django >= 1.8, < 2.0 (1.7 is also partially supported)
- m2m relations in models are not currently supported
- For Django 1.7, a query is run for every object in a query, resulting in N+1 total queries. For Django >= 1.8 only one additional query is run for each unmoderated query.
Full module documentation is hosted at ReadTheDocs: http://django-moderation.readthedocs.org/
Special thanks to all persons that contributed to this project.
Thank you for all ideas, bug fixes, patches.