mptt.forms¶
Form components for working with trees.
-
class
mptt.forms.TreeNodeChoiceField(queryset, *args, **kwargs)¶ A ModelChoiceField for tree nodes.
-
class
mptt.forms.TreeNodeMultipleChoiceField(queryset, *args, **kwargs)¶ A ModelMultipleChoiceField for tree nodes.
-
class
mptt.forms.TreeNodePositionField(*args, **kwargs)¶ A ChoiceField for specifying position relative to another node.
-
DEFAULT_CHOICES¶
-
FIRST_CHILD= 'first-child'¶
-
LAST_CHILD= 'last-child'¶
-
LEFT= 'left'¶
-
RIGHT= 'right'¶
-
-
class
mptt.forms.MoveNodeForm(node, *args, **kwargs)¶ A form which allows the user to move a given node from one location in its tree to another, with optional restriction of the nodes which are valid target nodes for the move.
-
base_fields= {'position': <mptt.forms.TreeNodePositionField object>, 'target': <mptt.forms.TreeNodeChoiceField object>}¶
-
declared_fields= {'position': <mptt.forms.TreeNodePositionField object>, 'target': <mptt.forms.TreeNodeChoiceField object>}¶
-
media¶
-
save()¶ Attempts to move the node using the selected target and position.
If an invalid move is attempted, the related error message will be added to the form’s non-field errors and the error will be re-raised. Callers should attempt to catch
InvalidNodeto redisplay the form with the error, should it occur.
-