--- description: globs: alwaysApply: false --- # Datenmodelle Die Anwendung verwendet SQLAlchemy als ORM mit folgenden Hauptmodellen: ## Benutzer und Authentifizierung - [User](mdc:models.py): Benutzermodell mit Authentifizierung und Profildaten ## Mind-Mapping und Wissensorganisation - [Category](mdc:models.py): Wissenschaftliche Kategorien zur Organisation der Mindmap - [MindMapNode](mdc:models.py): Knoten in der öffentlichen Mindmap - [UserMindmap](mdc:models.py): Benutzerspezifische Mindmaps - [UserMindmapNode](mdc:models.py): Speichert Positionen von Knoten in Benutzer-Mindmaps - [MindmapNote](mdc:models.py): Private Notizen zu Mindmap-Elementen ## Gedanken und Inhalte - [Thought](mdc:models.py): Gedanken und Konzepte, die in Mindmaps verknüpft werden - [ThoughtRelation](mdc:models.py): Verknüpfungen zwischen verschiedenen Gedanken - [ThoughtRating](mdc:models.py): Bewertungen von Gedanken durch Benutzer - [Comment](mdc:models.py): Kommentare zu Gedanken ## Hauptbeziehungen - Benutzer → Gedanken: 1-zu-n (Autor) - Benutzer → MindMaps: 1-zu-n - Gedanken ↔ MindMapNodes: n-zu-m - Kategorien → MindMapNodes: 1-zu-n - Gedanken ↔ Gedanken: über ThoughtRelation (gerichtete Beziehungen)