skip to navigation
skip to content

django-crumbs 0.5.0

A pluggable Django app for adding breadcrumbs to your project.

Downloads ↓

django-crumbs

django-crumbs is a pluggable Django app for adding breadcrumbs to your project.

Installation

  1. Install django-crumbs with pip:

    pip install django-crumbs
    
  2. Add to your INSTALLED_APPS and run syncdb:

    INSTALLED_APPS = (
        ...,
        'crumbs',
    )
    

How It Works

  1. In each template, you'll need to use the add_crumb template tag to append items to the trail:

    # basic crumb without a link
    {% add_crumb 'People' %}
    # crumb with link
    {% add_crumb 'People' 'list_people' %}
    # crumb with link and args
    {% add_crumb person.name 'view_person' person.pk %}
    

Note: no bread crumbs will be printed if only one call to add_crumb has been made.

Setup

  1. In your base.html template, add something along the lines of the following code:

    <div id="breadcrumbs">
        {% block breadcrumb %}
            {% load breadcrumb_tags %}
            {% add_crumb 'Home' 'home' %}
        {% endblock %}
        {% render_breadcrumbs %}
    </div>
    
  2. Now in each extended child template, simply add a new crumb to the trail in the breadcrumb block:

    {% block breadcrumb %}
        {{ block.super }}
        {% load breadcrumb_tags %}
        {% add_crumb 'People' 'list_people' %}
    {% endblock %}
    

Example

  1. base.html:

    <div id="breadcrumbs">
        {% block breadcrumb %}
            {% load breadcrumb_tags %}
            {% add_crumb 'Home' 'home' %}
        {% endblock %}
        {% render_breadcrumbs %}
    </div>
    
  2. person/list.html:

    {% extends "base.html" %}
    {% block breadcrumb %}
        {{ block.super }}
        {% load breadcrumb_tags %}
        {% add_crumb 'People' 'list_people' %}
    {% endblock %}
    
  3. person/view.html:

    {% extends "person/list.html" %}
    {% block breadcrumb %}
        {{ block.super }}
        {% load breadcrumb_tags %}
        {% add_crumb person.name 'view_person' person.pk %}
    {% endblock %}
    

Development sponsored by Caktus Consulting Group, LLC.

 
File Type Py Version Uploaded on Size # downloads
django-crumbs-0.5.0.tar.gz (md5) Source 2010-12-04 3KB 1057