Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/airtonix/django-navigation-manager
A simple django application that helps other applications to describe navigation bars to their views and expose them as template tags.
https://github.com/airtonix/django-navigation-manager
Last synced: 10 days ago
JSON representation
A simple django application that helps other applications to describe navigation bars to their views and expose them as template tags.
- Host: GitHub
- URL: https://github.com/airtonix/django-navigation-manager
- Owner: airtonix
- License: mit
- Created: 2011-02-26T00:33:42.000Z (almost 14 years ago)
- Default Branch: master
- Last Pushed: 2011-03-20T08:31:25.000Z (almost 14 years ago)
- Last Synced: 2024-05-21T03:17:25.610Z (8 months ago)
- Language: Python
- Homepage: airtonix.net/projects/django-navigation-manager
- Size: 102 KB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGES.txt
- License: LICENSE.md
Awesome Lists containing this project
README
Django Navigation Manager
=========================Django application that helps other applications declare navigation bar items
Provides :
+ manager methods for applications to register navigation bar and bar items
+ template tags to render navigation bar## Installation
1. You need to have python-setuptools installed
`sudo apt-get install python-setuptools`
1. `python ./setup.py install`## Usage
If you want to override the default navigation bar template, create a template called "navigation_bar.html".This is the default template :
Somewhere in your application, insert code similar to the following :
from django_navigation_manager.lib.manager import NavigationManager
navigation_manager = NavigationManager()
navigation_manager.add_to_bar("main",[
{ "label" : "Projects",
"urlconf" : "project.projects.urls",
"viewname" : "project-dashboard",
"args" : None,
},
{ "label" : "Issues",
"urlconf" : "project.projects.urls",
"viewname" : "project-issue-list",
"args" : None,
},
])navigation_manager.add_to_bar("projects",[
{ "label" : "Add Project",
"urlconf" : "project.projects.urls",
"viewname" : "project-project-add",
"args" : None,
"permissions" : ('project.can_add_project'), #optional
}
{ "label" : "Add Issue",
"urlconf" : "project.projects.urls",
"viewname" : "project-issue-add",
"args" : None,
"permissions" : ('project.can_add_issue'), #optional
}
])Where the above relates to a project tree of :
project/
projects/
templatetags/
templates/
forms/
project_project_add.html
project_project_edit.html
project_issue_add.html
project_issue_edit.html
project_dashboard.html
project_project_detail.html
project_project_list.html
project_issue_detail.html
project_issue_list.html
project_dashboard.html
__init__.py
models.py
views.py
urls.py
templates/
templatetags/And a project.projects.urls which might look like :
from django.conf.urls.defaults import *
urlpatterns = patterns("project.projects.views",
url(r'issue/all$', 'issue_list', name='project-issue-list'),
url(r'project/$', 'project_dashboard', name='project-dashboard'),
)## Legal
### django_navigation_manager/*
+ Copyright (c) 2011 Zenobius Jiricek
+ Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php### Trademarks
Django and the Django logo are registered trademarks of Django Software Foundation.
http://www.djangoproject.com/contact/foundation/