skip to navigation
skip to content

Not Logged In

django-fancytree 0.2.1

Django forms widget that uses Fancytree to display tree data

Django Fancytree Widget
----------------------

django-fancytree provides a widget using the fancytree js library to
render a forms.ModelMultipleChoiceField as a tree with selectable and
collapsable nodes.

See included project 'treewidget' as an example. Widget is used in
ModelMultipleChoiceField and allows user to select multiple categories.


Requirements
------------

django, django-mptt, jquery, jquery-ui


Usage
-----

::

from fancytree.widgets import FancyTreeWidget

categories = Category.objects.all()

class CategoryForm(forms.Form):
categories = forms.ModelMultipleChoiceField(
queryset=categories,
widget=FancyTreeWidget(queryset=categories)
)


In this example Category is a model registered with django-mptt.

Widget accepts **queryset** option, which expects pre-ordered queryset by
"tree_id" and "lft".

If you want to adjust tree data creation, you can define 'get_doc' method on
your model. Example:

::

def get_doc(self, values):
doc = {"title": name, "key": self.pk}
if strself.pk) in values:
doc['select'] = True
doc['expand'] = True
return doc  
File Type Py Version Uploaded on Size
django-fancytree-0.2.1.tar.gz (md5) Source 2014-07-01 296KB
  • Downloads (All Versions):
  • 15 downloads in the last day
  • 58 downloads in the last week
  • 326 downloads in the last month