From 45ab89ea0731f390709cc0ca82307ae2bda4fb8d Mon Sep 17 00:00:00 2001 From: Lorenz Padberg Date: Mon, 28 Mar 2022 17:41:58 +0200 Subject: [PATCH] added learnpath app --- server/vbv_lernwelt/learnpath/__init__.py | 0 server/vbv_lernwelt/learnpath/admin.py | 3 ++ server/vbv_lernwelt/learnpath/apps.py | 6 +++ .../learnpath/migrations/__init__.py | 0 server/vbv_lernwelt/learnpath/models.py | 47 +++++++++++++++++++ server/vbv_lernwelt/learnpath/tests.py | 3 ++ server/vbv_lernwelt/learnpath/views.py | 3 ++ 7 files changed, 62 insertions(+) create mode 100644 server/vbv_lernwelt/learnpath/__init__.py create mode 100644 server/vbv_lernwelt/learnpath/admin.py create mode 100644 server/vbv_lernwelt/learnpath/apps.py create mode 100644 server/vbv_lernwelt/learnpath/migrations/__init__.py create mode 100644 server/vbv_lernwelt/learnpath/models.py create mode 100644 server/vbv_lernwelt/learnpath/tests.py create mode 100644 server/vbv_lernwelt/learnpath/views.py diff --git a/server/vbv_lernwelt/learnpath/__init__.py b/server/vbv_lernwelt/learnpath/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/server/vbv_lernwelt/learnpath/admin.py b/server/vbv_lernwelt/learnpath/admin.py new file mode 100644 index 00000000..8c38f3f3 --- /dev/null +++ b/server/vbv_lernwelt/learnpath/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/server/vbv_lernwelt/learnpath/apps.py b/server/vbv_lernwelt/learnpath/apps.py new file mode 100644 index 00000000..ee511faf --- /dev/null +++ b/server/vbv_lernwelt/learnpath/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class LearnpathConfig(AppConfig): + default_auto_field = 'django.db.models.BigAutoField' + name = 'learnpath' diff --git a/server/vbv_lernwelt/learnpath/migrations/__init__.py b/server/vbv_lernwelt/learnpath/migrations/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/server/vbv_lernwelt/learnpath/models.py b/server/vbv_lernwelt/learnpath/models.py new file mode 100644 index 00000000..952e11ea --- /dev/null +++ b/server/vbv_lernwelt/learnpath/models.py @@ -0,0 +1,47 @@ +# Create your models here. +import uuid + +from django.db import models + + +class LearnBlock: + id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False) + internal_name = models.CharField(max_length=255) + title = models.CharField(max_length=255) + + +class LearnPath(LearnBlock): + + def __str__(self): + return f"{self.title}" + + +class Topic(LearnBlock): + learn_path = models.ForeignKey(LearnPath, on_delete=models.CASCADE) + is_visible = models.BooleanField(default=True) + + def __str__(self): + return f"{self.title}" + + +class Circle(LearnBlock): + topic = models.ForeignKey(Topic, on_delete=models.CASCADE) + + description = models.TextField(default="") + + def __str__(self): + return f"{self.title}" + + +class LearnSequence(LearnBlock): + circle = models.ForeignKey(Circle, on_delete=models.CASCADE) + + def __str__(self): + return f"{self.title}" + + +class LernUnit(LearnBlock): + learn_sequence = models.ForeignKey(LearnSequence, on_delete=models.CASCADE) + + def __str__(self): + return f"{self.title}" diff --git a/server/vbv_lernwelt/learnpath/tests.py b/server/vbv_lernwelt/learnpath/tests.py new file mode 100644 index 00000000..7ce503c2 --- /dev/null +++ b/server/vbv_lernwelt/learnpath/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/server/vbv_lernwelt/learnpath/views.py b/server/vbv_lernwelt/learnpath/views.py new file mode 100644 index 00000000..91ea44a2 --- /dev/null +++ b/server/vbv_lernwelt/learnpath/views.py @@ -0,0 +1,3 @@ +from django.shortcuts import render + +# Create your views here.