Skip to main content

Django Moderator

Django community trained Bayesian inference based comment moderation app.

django-moderator integrates Django’s comments framework classify comments into one of four categories, ham, spam, reported or unsure.

Users classify comments as reported using a report abuse mechanic. Staff users can then classify these reported comments as ham or spam.

Comments classified as spam will have their is_removed field set to True and as such will no longer be visible in comment listings.

Comments reported by users will have their is_removed field set to True and as such will no longer be visible in comment listings.

Comments classified as ham or unsure will remain unchanged and as such will be visible in comment listings.

django-moderator also implements a user friendly admin interface for efficiently moderating comments.

Installation

  1. Install or add django-moderator to your Python path.

  2. Add moderator to your INSTALLED_APPS setting.

  3. Configure django-likes as described here.

  4. Configure django-celery and add moderator.tasks to the CELERY_IMPORTS = (..., 'moderator.tasks')

  5. Add a MODERATOR setting to your project’s settings.py file. This setting specifies what classifier storage backend to use (see below) and also classification thresholds:

    MODERATOR = {
        'ABUSE_CUTOFF': 3,
    }

    ABUSE_CUTOFF` value of 3 as in this example specifies that any comment receiving 3 or more abuse reports will be classified as reported, awaiting further manual staff user classification.

  6. Optionally, if you want an additional moderate object tool on admin change views, configure django-apptemplates as described here , include moderator as an INSTALLED_APP before django.contrib.admin and add moderator.admin.AdminModeratorMixin as a base class to those admin classes you want the tool available for.

Additional Settings

  1. By default moderator comment replies are posted chronologically after the comment being replied to. If however you need replies to be posted before the comment being replied to(for example if you display your comments reverse cronologically), you can specify REPLY_BEFORE_COMMENT as True, i.e.:

    MODERATOR = {
        ...
        'REPLY_BEFORE_COMMENT': True,
        ...
    }

Authors

Praekelt Foundation

  • Shaun Sephton

  • Milton Madanda

  • Simon de Haan

Changelog

1.1.3 (2014-08-29)

  1. Ensure admin doesn’t break when content_type not match

1.1.2 (2014-04-24)

  1. Ensure SecretBallot doesn’t override default manager for Comments

1.1.1 (2014-02-12)

  1. Show is removed column in comments

1.1.0 (2014-02-12)

  1. Ensure spam comments are listed in SpamComments

1.0.9 (2014-02-03)

  1. Allow filtering of comments by username - fix param error

1.0.8 (2014-02-03)

  1. Allow filtering of comments by username

1.0.7 (2014-01-16)

  1. Ensure reported comments are listed in admin

1.0.6 (2014-01-15)

  1. Fix migrations - ensure comment replies are not lost

1.0.5 (2014-01-15)

  1. Set current user as the default user for CommentReply

1.0.4 (2014-01-14)

  1. Remove dependency to spambayes (redundant)

1.0.3 (2013-12-04)

  1. Fixed error when selecting multiple comments for replying in admin

1.0.2 (2013-11-28)

  1. Only report abuse for comments

1.0.1 (2013-11-22)

  1. Fix canned responses showing for all sites and not just selected site

1.0.0 (2013-11-21)

  1. MAJOR Remove Bayesian filtering. Only rely on manual moderation and user abuse reports

0.1.4 (2013-08-23)

  1. Remove check for abuse previously reported.

0.1.3 (2013-03-07)

  1. Include fixtures.

0.1.2 (2013-03-07)

  1. Include fixtures.

0.1.1 (2013-03-07)

  1. Added elivated abuse reporting functionality.

0.1.0 (2013-03-07)

  1. Realtime classification option.

  2. Mark spam with reply action.

  3. Post replies before comment option.

0.0.9 (2013-02-18)

  1. Further speed optimizations.

0.0.8 (2013-02-18)

  1. Admin speed optimizations.

  2. Add moderator reply admin action.

0.0.7 (2013-01-28)

  1. Added moderate admin change view tool.

0.0.6 (2013-01-24)

  1. Added site field for canned replies and filter accordingly on comment admin views.

0.0.5 (2012-12-03)

  1. Added traincommentclassifier management command.

  2. Admin proxy model additions to clearly group comments.

  3. Various optimizations.

0.0.4 (2012-08-29)

  1. Migration to add moderator_commentreply model.

0.0.3 (2012-08-29)

  1. Include templates.

0.0.2 (2012-08-29)

  1. Wide range of changes allowing for reporting of abusive comments by users.

0.0.1 (2012-05-23)

  1. Initial release

Metadata

Release files for django-moderator 1.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for django-moderator 1.1.3
File Size Uploaded Provenance Actions
django-moderator-1.1.3.tar.gz 22.9 kB Without provenance Details for django-moderator-1.1.3.tar.gz

Release files / django-moderator-1.1.3.tar.gz

Download URL django-moderator-1.1.3.tar.gz
Size 22.9 kB
Tags Source
SHA-256 checksum
How to use checksums
a3b5a80ce308e8df2682d0f636c320b40bb021ee6c562373bab3d50045708b09
BLAKE2b-256 checksum
How to use checksums
283b95d1a6a171ab1368faadaf540dad8ea398b592e0a91421b8889583dae127
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for django-moderator 1.1.3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page