jstree в джанговской админке для mptt моделей

На этот раз у ModelAdmin преопределен changelist_view, и все операции выполняются через ajax.

MpttAdmin также содержит свои шаблоны внутри себя и сам отдает все необходимые яваскрипты.

Выглядит это примерно так:

from app1.models import Category

from mpttadmin import MpttAdmin

class CategoryAdmin(MpttAdmin):
tree_title_field = 'name'

class Meta:
model = Category

Скриншот:


Код и пример лежат тут.


Получить копию последней версии можно набрав команду:

hg clone http://code.tabed.org/mptt_admin/

Add post to:   Delicious Reddit Slashdot Digg Technorati Google
Make comment

Comments

Привет, полезный модуль, но у меня есть пара вопросов:

1) Может ли Ваш модуль выводить дополнительные данные кроме названия? Например: “Название”; “Статус”; “Дата создания” и т.д…

2) И еще на сколько я знаю, в jstree при щелчке на элемент мы его выделяем, а как сделать ссылку чтобы перейти к редактированию?

1) сейчас нет, это возможно(через плагин metadata), но я пока этого не реализовал 2) у меня при щелчке(именно щелчке, а не перетаскивании) переходит к редактированию. можно сделать редактирование по двойному щелчку. делается это через callback`и jstree: onchange, ondblclick

Я добавил возможность выводить дополнительные поля. Задаются они через tree_display, по аналогии с list_display — в примере это отражено.

Для raw_id_fields = [‘regions’] делаем маленький фикс в jstree_admin.js

onchange : function (node) { if ($(‘body’).hasClass(‘popup’)) { opener.dismissRelatedLookupPopup(window, $(node).children(“a:eq(0)”).attr(“href”).split(‘/’)[0]); return false; } else { document.location.href = $(node).children(“a:eq(0)”).attr(“href”); } }

Required. 30 chars of fewer.

Required.

captcha image Please, enter symbols, which you see on the image