Skip to main content

Instructions

This is a reusable django app which adds some templatetags to django-taggit.

Installation

Just install django-taggit-templatetags via pip:

$ pip install django-taggit-templatetags

After installing and configuring django-taggit, just add taggit_templatetags to your INSTALLED_APPS in your settings.py:

INSTALLED_APPS = (
...
'taggit_templatetags',
...
)

Usage

Now there are some templatetags enabled, at the moment only to create lists of tags and tag-clouds.

In your templates, you need to load taggit_extras:

...
{% load taggit_extras %}
...

Taglists

After loading taggit_extras you can create a list of tags for the whole project (in the sense of djangoproject), for an app (in the sense of djangoapp), for a model-class (to get a list for an instance of a model, just use its tag-field).

For the tags of a project, just do:

{% get_taglist as tags %}

For the tags of an app, just do:

{% get_taglist as tags for 'yourapp' %}

For the tags of an model, just do:

{% get_taglist as tags for 'yourapp.yourmodel' %}

No matter what you do, you have a list of tags in the tags template variable. You can now iterate over it:

<ul>
{% for tag in tags %}
<li>{{tag}} ({{tag.num_times}})</li>
{% endfor %}
<ul>

As you can see, each tag has an attribute num_times which declares how many times it was used. The list of tags is sorted descending by num_times.

Inclusion-Tag

For convenience, there’s an inclusion-tag. It’s used analogue. For example, for a taglist of a model, just do:

{% include_taglist 'yourapp.yourmodel' %}

Tagclouds

A very popular way to navigate through tags is a tagcloud. This app provides some tags for that:

{% get_tagcloud as tags %}

or:

{% get_tagcloud as tags for 'yourapp' %}

or:

{% get_tagcloud as tags for 'yourapp.yourmodel' %}

respectivly. The resulting list of tags is ordered by their name attribute. Besides the num_items attribute, there’s a weight attribute. Its maximum and minimum may be specified as the settings section reads.

Inclusion-Tag

Even for the tagcloud there’s an inclusion-tag. For example, for a tagcloud of a model, just do:

{% include_tagcloud 'yourapp.yourmodel' %}

Settings

There are a few settings to be set:

TAGGIT_TAGCLOUD_MIN (default: 1.0)

This specifies the minimum of the weight attribute of a tagcloud’s tags.

TAGGIT_TAGCLOUD_MAX (default: 6.0)

This specifies the maximum of the weight attribute of a tagcloud’s tags.

If you want to use the weight as font-sizes, just do as follows:

<font size={{tag.weight|floatformat:0}}>{{tag}}</font>

So the weights are converted to integer values.

Thanks

Thanks to the python- and django-community, in particular to Alex Gaynor, the inventor of django-taggit and a wonderful guy to argue with.

Metadata

Release files for django-taggit-templatetags 0.2.5

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

Source distributions (sdists)

Source distribution for django-taggit-templatetags 0.2.5
File Size Uploaded
django-taggit-templatetags-0.2.5.zip 13.3 kB Details
django-taggit-templatetags-0.2.5.tar.gz 6.2 kB Details

Release files / django-taggit-templatetags-0.2.5.zip

Download URL django-taggit-templatetags-0.2.5.zip
Size 13.3 kB
Tags Source
SHA-256 checksum
How to use checksums
20441941d1316a4347e21f2aabef177d982f2d5394e4deefefde219bdd7c4a77
BLAKE2b-256 checksum
How to use checksums
772a989ff7ec4a9b31ecb88801acf96ab118a4922d20c8769e8c03e81100828f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / django-taggit-templatetags-0.2.5.tar.gz

Download URL django-taggit-templatetags-0.2.5.tar.gz
Size 6.2 kB
Tags Source
SHA-256 checksum
How to use checksums
9c5eea1d6e4f350176cdc86e6cbdbb26b6efd64b22b43ca89cae6357a9af829e
BLAKE2b-256 checksum
How to use checksums
326ca60bd37e93dcc96eaf7463056709266453062be969853764c078d1f3cb34
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
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