Skip to main content

Django Moderation Model Mixin

https://badge.fury.io/py/django-moderation-model-mixin.svg/?style=flat-square https://readthedocs.org/projects/pip/badge/?version=latest&style=flat-square Coverage Status

This package adds the possibility of handle a moderation to django models and associated admins. This means being able to mark an entry as accepted, rejected or to be moderated (default). Querysets, Managers and Signals are included.

Documentation

The full documentation is at https://django-moderation-model-mixin.readthedocs.io.

Quickstart

Install Django Moderation Model Mixin:

pip install django-moderation-model-mixin

Add it to your INSTALLED_APPS:

INSTALLED_APPS = (
    ...
    'moderation_model_mixin',
    ...
)

Features

  • ModerationModelMixin

  • ModerationModelMixinAdmin

  • ModerableQuerySet

  • Actions in admin changelist

  • Signals associated to moderation action

Example of usage

# in your admin.py
class ExampleModelAdmin(ModerationModelMixinAdmin, admin.ModelAdmin):
    ...

admin.site.register(ExampleModel, ExampleModelAdmin)

# in your models.py
from moderation_model_mixin.models import ModerationModelMixin

class ExampleModel(ModerationModelMixin, models.Model):
    ...

Admin Interface

Here some users interface example.

First one is how the change form is shown. There are two new buttons in the submit row that allows to accept or reject entries that not yet moderated.

Not moderated instance image

This is how an accepted entry looks.

Accepted instance image

This is how a rejected entry looks.

Rejected instance image

A confirmation pop-up is shown when an acceptance or rejection request is made

Pop-up image

Last image shows actions in the changelist.

Actions image

Running Tests

Does the code actually work?

source <YOURVIRTUALENV>/bin/activate
(myenv) $ pip install tox
(myenv) $ tox

Development commands

pip install -r requirements_dev.txt
invoke -l

Credits

Tools used in rendering this package:

History

0.1.0 (2021-11-12)

  • First release on PyPI.

Metadata

Release files for django-moderation-model-mixin 0.1.1

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-moderation-model-mixin 0.1.1
File Size Uploaded Provenance Actions
django-moderation-model-mixin-0.1.1.tar.gz 12.0 kB Without provenance Details for django-moderation-model-mixin-0.1.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for django-moderation-model-mixin 0.1.1
File Interpreter ABI Platform Actions
django_moderation_model_mixin-0.1.1-py2.py3-none-any.whl Python 3, Python 2 none any Details for django_moderation_model_mixin-0.1.1-py2.py3-none-any.whl

Total release size: 23.4 kB

Release files / django-moderation-model-mixin-0.1.1.tar.gz

Download URL django-moderation-model-mixin-0.1.1.tar.gz
Size 12.0 kB
Tags Source
SHA-256 checksum
How to use checksums
deef1fe33adc9acae7eb9bb962231dad4f8504b306e518cca67ed61913f1175a
BLAKE2b-256 checksum
How to use checksums
cd534d51bf54677593c752ed6e7f668691ef15f51c6da965051a128202da8862
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.8

Release files / django_moderation_model_mixin-0.1.1-py2.py3-none-any.whl

Download URL django_moderation_model_mixin-0.1.1-py2.py3-none-any.whl
Size 11.4 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
497c77a11e68f7822261ca0803895fcd54ca8dd75f189371a21146ac6e0af43e
BLAKE2b-256 checksum
How to use checksums
46cc8aa1f33d1e005fe21631551abeb3fd53fc6db996e11a9363ca1dbb03717d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.8

Security for django-moderation-model-mixin 0.1.1

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.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files No provenance

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