fields.py 535 B

1234567891011121314
  1. from django.utils.html import conditional_escape, mark_safe
  2. from mptt.forms import TreeNodeChoiceField
  3. class ForumChoiceField(TreeNodeChoiceField):
  4. """
  5. Custom forum choice field
  6. """
  7. def __init__(self, *args, **kwargs):
  8. kwargs['level_indicator'] = u'- - '
  9. super(ForumChoiceField, self).__init__(*args, **kwargs)
  10. def _get_level_indicator(self, obj):
  11. level = getattr(obj, obj._mptt_meta.level_attr)
  12. return mark_safe(conditional_escape(self.level_indicator) * (level - 1))