diff --git a/server/books/categorize_modules.py b/server/books/categorize_modules.py index 527b20a5..1a718736 100644 --- a/server/books/categorize_modules.py +++ b/server/books/categorize_modules.py @@ -1,3 +1,4 @@ +from users.models import User from .models.module import Module, ModuleLevel, ModuleCategory def analyze_module_meta_titles(): @@ -17,10 +18,15 @@ def analyze_module_meta_titles(): print(f"{i}.: {set(leafs)}") -def create_default_levcels_and_categories(): +def create_default_levels_and_categories(): + ModuleLevel.objects.get_or_create(name=f"Alle Lehrjahre", filter_attribute_type="all") + for lehrjahr in range(1,4): module_category, created = ModuleLevel.objects.get_or_create(name=f"{lehrjahr}. Lehrjahr") + + ModuleCategory.objects.get_or_create(name=f"Alle Lernfelder", filter_attribute_type="all") + for category in range(1, 10): ModuleCategory.objects.get_or_create(name=f"Lernfeld {category}") @@ -32,21 +38,23 @@ def categorize_modules(): modules.update(level=level) for category in ModuleCategory.objects.all(): - modules = Module.objects.filter(category__isnull=True, meta_title__contains=type.name) + modules = Module.objects.filter(category__isnull=True, meta_title__contains=category.name) print(f"{category.name}: {modules.count()}") modules.update(category=category) def uncategorize_modules(): + User.objects.all().update(last_module_level=None) + # ModuleCategory.objects.all().delete() ModuleLevel.objects.all().delete() def delete_unused_levels(): - for level in ModuleLevel.objects.all(): + for level in ModuleLevel.objects.filter(filter_attribute_type="exact"): if not level.module_set.exists(): level.delete() def delete_unused_categories(): - for category in ModuleCategory.objects.all(): + for category in ModuleCategory.objects.filter(filter_attribute_type="exact"): if not category.module_set.exists(): category.delete() diff --git a/server/books/management/commands/categorize_modules.py b/server/books/management/commands/categorize_modules.py index 0e7d7ef0..59b2a5e5 100644 --- a/server/books/management/commands/categorize_modules.py +++ b/server/books/management/commands/categorize_modules.py @@ -1,14 +1,14 @@ from django.core.management import BaseCommand from books.categorize_modules import categorize_modules, delete_unused_levels, uncategorize_modules, \ delete_unused_categories -from books.categorize_modules import create_default_levcels_and_categories +from books.categorize_modules import create_default_levels_and_categories class Command(BaseCommand): def handle(self, *args, **options): self.stdout.write("Categorizing modules") uncategorize_modules() - create_default_levcels_and_categories() + create_default_levels_and_categories() categorize_modules() delete_unused_levels() delete_unused_categories() diff --git a/server/books/management/commands/create_default_model_categories.py b/server/books/management/commands/create_default_model_categories.py index 7c053814..bf055cb6 100644 --- a/server/books/management/commands/create_default_model_categories.py +++ b/server/books/management/commands/create_default_model_categories.py @@ -1,11 +1,11 @@ from django.core.management import BaseCommand -from books.categorize_modules import categorize_modules, create_default_levcels_and_categories +from books.categorize_modules import categorize_modules, create_default_levels_and_categories class Command(BaseCommand): def handle(self, *args, **options): self.stdout.write("Create defaut categories") - create_default_levcels_and_categories() + create_default_levels_and_categories() self.stdout.write("Finish")