0002_default_categories.py 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. # -*- coding: utf-8 -*-
  2. from __future__ import unicode_literals
  3. from django.db import migrations
  4. from misago.core.utils import slugify
  5. from misago.categories.models import PRIVATE_THREADS_ROOT, THREADS_ROOT
  6. _ = lambda s: s
  7. def create_default_categories_tree(apps, schema_editor):
  8. Category = apps.get_model('misago_categories', 'Category')
  9. Category.objects.create(
  10. special_role=PRIVATE_THREADS_ROOT,
  11. name='Private',
  12. slug='private',
  13. lft=1,
  14. rght=2,
  15. tree_id=0,
  16. level=0,
  17. )
  18. root = Category.objects.create(
  19. special_role=THREADS_ROOT,
  20. name='Root',
  21. slug='root',
  22. lft=3,
  23. rght=6,
  24. tree_id=1,
  25. level=0,
  26. )
  27. category_name = _("First category")
  28. Category.objects.create(
  29. parent=root,
  30. lft=4,
  31. rght=5,
  32. tree_id=1,
  33. level=1,
  34. name=category_name,
  35. slug=slugify(category_name),
  36. )
  37. class Migration(migrations.Migration):
  38. dependencies = [
  39. ('misago_categories', '0001_initial'),
  40. ]
  41. operations = [
  42. migrations.RunPython(create_default_categories_tree),
  43. ]