Skip to main content

Menu helpers for django projects

Project description

django-menus is an app that provides some useful template helpers for rendering and handling menus within django projects.

To use in in your django project, it needs to be installed:

$ pip install django-menus

And "menus" needs to be in your settings.INSTALLED_APPS.

tree_menu

An extension to django-mptt, this is a template that you can use to have a dynamic tree menu, where selecting items with children expands them, and selecting a leaf node follows the link. To use it, you’ll need to have mptt installed into your project as well as this package.

You use it like:

{% load mptt_tags %}

{% block tree_menu %}
  {% full_tree_for_model app_label.ModelName as menu %}
  {% include "menu/tree-menu.html" %}
{% endblock %}

If you want it to dynamically hide/show nested data, then you will want to have:

<script src="{{ STATIC_URL }}menus/js/tree-menu.js"></script>
<link rel="stylesheet" href="{{ STATIC_URL }}menus/style/tree-menu.css"
      type="text/css" media="screen" title="no title" charset="utf-8">

Somewhere in your page.

This part is currently in use in one small part of a project, and may change if I start to use it more. This README is a little light on because I haven’t touched this code in a long, long time.

Changes

1.1.2 - Python 3 support

1.1.1 - Pass through args and kwargs to the test function if it accepts them.

1.0.9 - Allow for adding classes, and buttons as menu items.

1.0.8 - Allow for absolute urls, ie, pointing to another server. We never try to validate these for permission to view, it is assumed the user can.

1.0.7 - Change how version number is stored. Include a new li-item.html template, and refactor how the template is found. Check func_code exists before accessing it. Refactor some of the handling of paths. Better handle quoting issues.

1.0.6 - Documentation fix only.

1.0.5 - Actually install all of the static media/templates.

1.0.4 - Don’t fail on install if README.md missing.

1.0.3 - Repackaged to include README.rst [Thanks to John Bazik jsb@cs.brown.edu]

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-menus-py3-1.1.3.tar.gz (7.9 kB view details)

Uploaded Source

File details

Details for the file django-menus-py3-1.1.3.tar.gz.

File metadata

File hashes

Hashes for django-menus-py3-1.1.3.tar.gz
Algorithm Hash digest
SHA256 10a9fd9a319c4979376a537d032ae6ff70ae53241486db6089d5b38736597919
MD5 cfc1c3a60249bc5c9b00eb5621ef0f1a
BLAKE2b-256 1f952ff772432925f7d8bda18151f54ede7f70ffb591674e6f6b53c9dbb41de0

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page