Skip to main content

Boilerplate for creating publishable lists of objects

Project description

Django-mininews
===============

.. image:: https://pypip.in/v/django-mininews/badge.png
:target: https://crate.io/packages/django-mininews/
:alt: Latest PyPI version

.. image:: https://pypip.in/d/django-mininews/badge.png
:target: https://crate.io/packages/django-mininews/
:alt: Number of PyPI downloads

.. image:: https://travis-ci.org/richardbarran/django-mininews.svg?branch=master
:target: https://travis-ci.org/richardbarran/django-mininews

.. image:: https://coveralls.io/repos/richardbarran/django-mininews/badge.png?branch=master
:target: https://coveralls.io/r/richardbarran/django-mininews?branch=master

Django-mininews is a basic tool for controlling the *publication* of objects.

Let's take an example: you have a 'news' application, that just consists of a
Article model. In the admin interface, mininews will add this fieldset:

.. image:: docs/img/mininews-fieldset.png

All articles will have the following 3 fields:

- status: usually 'draft' or 'published'.
- start: start date, defaults to whenever the status is changed to ``published``.
- end: end date; optional.

Articles can only be viewed in the public website **if** they are ``published``
**and** between the start and end dates.

In addition, we have a fieldset for showing various read-only status fields:

.. image:: docs/img/mininews-status-fieldset.png

These can be of use for tracking changes to an Article.

And that's it... Mininews is just an abstract Model, together with plenty of code - in the models,
views, admin and sitemap - to make the best use of it, that you will reuse
again and again throughout a project.

What can I use it for?
----------------------
Here are some examples of Mininews at work:

- `Minutes of the meetings of an association <http://www.saphra.org.uk/meetings/>`_.
- `Controlling the publication of the Events at a well-known racetrack <http://www.silverstone.co.uk/events/>`_.
- `Controlling when job offers are displayed <http://www.ipglobal-ltd.com/en/about/careers/>`_.

Alternatives
------------
There are several similar projects that take slightly different approaches
to publication control; usually they introduce more sophisticated control. A well-known
example is `django-reversion <https://github.com/etianen/django-reversion>`_.

Mininews is a very basic publication control tool, but works well on several production
websites. Its author has found it be a decent compromise between a tool that's too
basic to be useful, and too complex to be understood by its intended end users.

Installation and usage
----------------------
.. image:: https://readthedocs.org/projects/django-mininews/badge/?version=latest
:target: https://readthedocs.org/projects/django-mininews/?badge=latest
:alt: Documentation Status
Please take a look at
`the documentation <http://django-mininews.readthedocs.org/en/latest/index.html>`_ on ReadTheDocs.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-mininews-0.6.1.tar.gz (7.6 kB view details)

Uploaded Source

File details

Details for the file django-mininews-0.6.1.tar.gz.

File metadata

File hashes

Hashes for django-mininews-0.6.1.tar.gz
Algorithm Hash digest
SHA256 98666b57ba7c9cd81ed49709b741e940c19f1b882b5c9eec0092203bc670a7df
MD5 acdd5af517a3cdcaff74c5feebe9d0f1
BLAKE2b-256 f5f60e6a7e8cf69f7009e255456e7a50f1edf91f4103efee911509726b3cd1b7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page