Skip to main content

A Django app for managing re-usable blocks of tiny content.

Project description

.. image:: https://travis-ci.org/dominicrodger/django-tinycontent.svg
:target: https://travis-ci.org/dominicrodger/django-tinycontent

.. image:: https://coveralls.io/repos/dominicrodger/django-tinycontent/badge.svg?branch=master&service=github
:target: https://coveralls.io/github/dominicrodger/django-tinycontent?branch=master

django-tinycontent is a simple Django application for re-usable
content blocks, much like `django-boxes`_.

Installation is simple::

pip install django-tinycontent

Add ``tinycontent`` to your ``INSTALLED_APPS``.

Usage in templates is simple::

{% load tinycontent_tags %}

{% tinycontent_simple 'content_name' %}

Or, to specify a value if a content block by the given name cannot be
found, use::

{% load tinycontent_tags %}

{% tinycontent 'content_name' %}
This will be shown if no matching object is found.
{% endtinycontent %}

The name of the content block can also be a context variable, using
both the simple and the complex variants.

Content blocks themselves can be added and edited using Django's admin
interface. If a block with the name given in the template tag cannot
be found, either nothing is rendered (if using
``tinycontent_simple``), or the text between ``tinycontent`` and
``endtinycontent`` is rendered (if using the more complex variant).

To apply custom filters to your content, set ``TINYCONTENT_FILTER`` to
a dotted path to a callable that takes the raw content and returns the
transformed content. You can also set ``TINYCONTENT_FILTER`` to be a
list of dotted paths to callables, to chain filters together.

django-tinycontent supports all versions of Django from 1.5 to
1.8. Python 2.7, 3.3 and 3.4 are supported.

Changelog
=========

v0.7.1
------

* Added migration required for Python 3 (thanks @markus-hinsche).

v0.7.0
------

* Compatibility changes for Django 1.11 - dropped support for
versions of Django earlier than 1.8, and Python 3.4 (Python 2.7 and
Python 3.5 are still supported).

v0.6.1
------

* Modify cache name, to prevent warnings for non-ASCII characters or
whitespace (thanks @ad-m).

v0.6.0
------

* Compatibility changes for Django 1.10.

v0.5.1
------

* Added a Polish translation and locale (thanks @ad-m).

v0.5.0
------

* Add support for multiple arguments to both the ``tinycontent`` and
the ``tinycontent_simple`` template tags. See the documentation
about :ref:`multiple-arguments`.
* Start caching database queries - fetching a TinyContent block by
name (as the template tags do), will only hit the database the
first time that content block is loaded (unless the content block
is changed).

v0.4.0
------

* Require at least django-autoslug 1.8.0, to fix a warning about
unapplied migrations.

v0.3.0
------

* Drop support for Django 1.4 (it's quite hard to support Django 1.4
and 1.9 in a single release - since Django 1.4 requires ``{% load
url from future %}``, and Django 1.9 doesn't support it).
* Ensure the wheel we upload to PyPI is universal.
* Forward compatibility for Django 1.9 - remove the ``{% load url
from future %}`` from tinycontent templates.

v0.2.1
------

* Forwards compatibility change for Django 1.9 - which will remove
the version of ``importlib`` bundled with Django. All supported
versions of Python (2.7, 3.3 and 3.4) have ``importlib``.

v0.2.0
------

* Dropped support for Python 2.6.
* Added a built-in markdown filter - you can use it by setting
``TINYCONTENT_FILTER`` to
``'tinycontent.filters.md.markdown_filter'``.
* Added the ability to include links to files which you can upload
via the admin.
* Added support for setting ``TINYCONTENT_FILTER`` to a list of
dotted paths, to allow chaining filters.

v0.1.8
------

* Added the ``TINYCONTENT_FILTER`` setting for controlling the way
content is output.
* Improved testing with Travis (we now test all supported Python
versions and Django versions).

.. _django-boxes: https://github.com/eldarion/django-boxes


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-tinycontent-0.7.1.tar.gz (12.3 kB view details)

Uploaded Source

Built Distribution

django_tinycontent-0.7.1-py2.py3-none-any.whl (22.5 kB view details)

Uploaded Python 2Python 3

File details

Details for the file django-tinycontent-0.7.1.tar.gz.

File metadata

File hashes

Hashes for django-tinycontent-0.7.1.tar.gz
Algorithm Hash digest
SHA256 8c067b4e2a31a4aa102608d91cac4db5c9d72042ec6598bbf49f17a637bbc9ae
MD5 583e590b8b2134b93c7fa2a7da865f8c
BLAKE2b-256 1edf6ea30dab555b73f937f7f7c616a3f04c15d3d5f33698a1d3abdbc8c3a6d0

See more details on using hashes here.

File details

Details for the file django_tinycontent-0.7.1-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for django_tinycontent-0.7.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 ab5a102c901a5c03bcf14b36713cfc3be509199225530b201f551a7a1e369109
MD5 c8bf25d2f0e3ab2f0b069b5e675811c7
BLAKE2b-256 6341f84ea9d7d908835f8cfbc44f8c03a1849b8468018b0f866373df377bbf34

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