This is a pre-production deployment of Warehouse, however changes made here WILL affect the production instance of PyPI.
Latest Version Dependencies status unknown Test status unknown Test coverage unknown
Project Description

MOJO NAVIGATION

This Django app manages navigations trees with simple features. It is highly inspired by django-treenav and django-sitetree. It offers a lighter version to allow easy customisation.

The trees structure is using mptt. Each item offer various options to generate the url, restrict access given user status and permissions, classes and behaviours.

Changelist view:

Add view:

Install

It is strongly recommanded to install this theme from GIT with PIP onto you project virtualenv.

From PyPi

pip install mojo-navigation

From Github

https://github.com/django-mojo/mojo-navigation#egg=mojo-navigation

setup

This application works with django mptt module in order to display the trees. It is highly recommended to add it in the INSTALLED_APPS.

INSTALLED_APPS = (
    ...
    'django_mptt'
    ...
)

If you want to use the default model and admin, also install the module itself.

INSTALLED_APPS = (
    ...
    'mojo.navigation'
    ...
)

Then install your model with

python manage.py syncdb

In case you are using South, you can alternatively do:

python manage.py migrate mojo.navigation

Managers

There are 2 main managers to help sortting and filtering the menu items.

Tree

You can get all items of a specific tree by passing its slug in the for_tree manager, for exemple:

tree_items = Item.objects.for_slug('slug_exemple')

User

As we are using permissions for items. You can filter items for a specific user to retrieve all the items he has access to by passing its object in the for_user manager, for exemple:

tree_items = Item.objects.for_user(request.user)

Utils

level

You can limit the number of tree levels of trees. For exemple, some menus can be one or two levels only. In such case its useless to allow the the user to add more.

In order to limit the number of levels you need to create a custom admin class inheriting from mojo.navigation.admin.ItemAdmin and add a level_limit attribute with the desired value.

For exemple, this will limit the tree to two levels:

from mojo.navigation.admin import ItemAdmin

class CustomItemAdmin(ItemAdmin):
    level_limit = 1

Contribution

Please feel free to contribute. Any help and advices are much appreciated.

Release History

Release History

0.0.3

This version

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.0.2

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.0.1

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

Download Files

Download Files

TODO: Brief introduction on what you do with files - including link to relevant help section.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
mojo-navigation-0.0.3.tar.gz (9.6 kB) Copy SHA256 Checksum SHA256 Source Dec 4, 2015

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS HPE HPE Development Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting