skip to navigation
skip to content

django-gizmo 0.0.4

Django app allowing for configurable targetting of template inclusion tags.


  1. Add gizmo to your INSTALLED APPS setting.

  2. Add ROOT_GIZMOCONF value to your projects settings file. This specifies the module in which your configured your gizmos, i.e.:

    ROOT_GIZMOCONF = 'project.gizmos'

    In this case we have a module called project containing a file.

  3. Create your gizmos config (in this cased named file in the form:

    gizmos = (
        ('<loader name>', '<tag name>', '<slot name>', [['<url_name'>, ]]),


  • <loader name> being the name you would normally pass to Django’s load tag, i.e. myapp_inclusion_tags for {% load myapp_inclusion_tags %}.
  • <tag name> being the name of the tag you want to include, i.e. advert for {% advert %}.
  • <slot name> being the name of the slot you want the tag to show up in, i.e. home.
  • <url_name> optional being the names of the urls you want the tag to show up in, i.e. home.


Gizmos are stock standard Django inclusion tags. The only diffirence is that instead of specifying tags within a template you specify tags from a distance by using a gizmo conf file in conjunction with the gizmos tag.

For example, lets say we have an advert tag specified in myapp’s inclusion tags which we only want to call in the gizmo slot named advert for the url named home:

  1. Create your tags as normal.

  2. Create your gizmos config file in the form:

    gizmos = (
        ('myapp_inclusion_tag', 'advert', 'advert', ['home', ]),
  3. In your template for the home view load the gizmo inclusion tags and include a gizmos tag with a slot name of advert:

    {% load gizmo_inclusion_tags %}
    ...some html...
    {% gizmos 'home_advert' %}
    ...some more html...
File Type Py Version Uploaded on Size
django-gizmo-0.0.4.tar.gz (md5) Source 2012-07-31 5KB
django_gizmo-0.0.4-py2.4.egg (md5) Python Egg 2.4 2012-07-31 12KB