Skip to main content
Help improve PyPI by participating in a 5-minute user interface survey!

A pluggable Django app for adding breadcrumbs to your project.

Project Description

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.

Release history Release notifications

This version
History Node

0.5.0

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
django-crumbs-0.5.0.tar.gz (3.5 kB) Copy SHA256 hash SHA256 Source None Dec 4, 2010

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page