djangoでツリーを効果的に使用するために、 mpttがあります。これは、モデルにツリーなどを表示するためのテンプレートタグと同様に、効率的な選択のためのフィールドとメソッドを追加します。
mpttを使用しない場合は、親へのリンクがあるだけです。jstreeは1つのjavascriptを使用して接続できます。これは別の記事です。
mpttを使用するモデルの詳細。
mpttを使用して管理者モデルの基本クラスを作成しました。 オブジェクトのリストのビューを独自のビューに置き換えます。これはツリーに表示され、Ajaxリクエストを追加してブランチを新しい場所に移動し、オブジェクトの名前を変更して削除します。
したがって、ブランチを目的の場所にドラッグし、名前を変更して削除できます。 ブランチを作成すると、オブジェクトを作成するビューにリダイレクトされ、親要素へのリンクが公開されます。
いくつかのフィールドをツリーブランチに表示できます。 ユーザーが使用できないアクションがある場合、jstreeでブロックされます。 ブランチをクリックすると、編集ビューにリダイレクトされます。右クリックすると、コンテキストメニューが表示されます。

これを利用するには、mptt_adminを設定する必要があります。
hg clone http://code.tabed.org/mptt_admin/
cd mptt_admin
python setup.py install
mptt_adminと共にサンプルプロジェクトがあり、テストに使用できます。
accに追加します。 次のようなadmin.pyコード:
from myapp.models import MyModel from mpttadmin import MpttAdmin class MyModelAdmin(MpttAdmin): tree_title_field = 'name' tree_display = ('name','slug','created|date') #name class Meta: model = MyModel
テンプレートはMpttAdminで保護されており、必要なjavascriptを自分で与える方法を知っています。
tree_title_fieldは名前の変更に必要です。指定しない場合、名前の変更は使用できず、オブジェクトの__unicode__が表示されます。
list_displayとの類推により、いくつかのフィールドを指定でき、実装機能のおかげでそれらでフィルターを使用できます(tree_title_fieldを除く)。