Package: django-monitor
AboutModeration seems to be some job each one want to do in their own way.
Django-monitor is a django-app to moderate model objects. It was started as a
clone ofdjango-gatekeeperproject but to meet certain business requirements.
Read about those requirements it meet in theFeaturessection.Here, the moderation process is well integrated with django-admin. That is, all
moderation actvities are performed from within the changelist page itself.The detailed documentation for latest revision is available at:http://django-monitor.readthedocs.orgWithin thedocs/source/directory inside the source path.RequirementsPython >= 2.4Django >= 1.1InstallationDirectly from the python package indexUsing pip:$ pip install django_monitorUsing easy_install:$ easy_install django_monitorOR Directly from the mercurial repoClone the repo (if you have hg installed):$ hg clone http://bitbucket.org/rajeesh/django-monitor/OR Download & install from available archives:Get the archive from any of the following locations:http://bitbucket.org/rajeesh/django-monitor/downloadshttp://pypi.python.org/pypi/django-monitor#downloadsInstall using the setuptools as given below:$ tar xzf django-monitor-xxx.tar.gz
$ cd django-monitor-xxx
$ python setup.py installIf setuptools is not installed, you may copy thedjango_monitordirectory to somewhere in your python path.Then add ‘django_monitor’ to your project’ssettings.INSTALLED_APPS.FeaturesModel-specific permissionEach moderated model will have an associated moderate permission. To approve
or challenge any object created for a particular model, users need to have
the corresponding permission.Auto-moderationAny object created by a user with add permission will have anIn Pendingstatus. If the user has got moderate permission also, the object created will
automatically get approved (status becomesApproved).Moderation from within admin changelistThe changelist of a moderated model displays the current moderation status of
all objects. Also, you can filter the objects by their moderation status. Three
actions are available for moderation. To moderate, user just need to select the
objects, choose appropriate action and pressGo.Related moderationWhen a manager moderates some model objects, there may be some other related
model objects which also can get moderated along with the original ones. The
developer can specify such related models to be moderated during registration.Data protectionThe developer can prevent admin-users from changing values of selected fields
of approved objects. Deleting approved objects also can be prevented if your
client’s business requires that.Basic usage (developers)Register the model for moderation usingdjango_monitor.nq.Example:import django_monitor
from django.db import models
class MyModel(models.Model):
    pass

django_monitor.nq(MyModel)InheritMonitorAdmin, notModelAdminfor moderated models.# in your admin.py
from django_monitor.admin import MonitorAdmin
class MyAdmin(MonitorAdmin):
    pass

from django.contrib import admin
admin.site.register(MyModel, MyAdmin)NoteDjango-monitor can not bring existing model instances under moderation.
So, enqueue the model first and then only create model instances.More details given at the documentation locations mentioned above.