shinkan-jinkendo/backend/routers
Lars 1e5e18c0b3
Some checks failed
Deploy Development / deploy (push) Successful in 33s
Test Suite / lint-backend (push) Successful in 0s
Test Suite / build-frontend (push) Successful in 5s
Test Suite / playwright-tests (push) Failing after 1m57s
feat: Migration 009 - Zielgruppen M:N Refactoring
Backend Phase A (Database + API):
- Migration 009: target_groups.training_style_id entfernt
- Migration 009: Neue Junction-Tabelle training_style_target_groups
- Migration 009: Datenmigration alte → neue Struktur (idempotent)
- API: 5 neue Endpoints für M:N Management
  * GET /training-style-target-groups (mit Enrichment)
  * POST /training-style-target-groups (Upsert-Logik)
  * PUT /training-style-target-groups/{id} (is_primary)
  * DELETE /training-style-target-groups/{id}
  * GET /training-styles/hierarchy (für Tree-View)
- API: GET/POST/PUT /target-groups jetzt global (ohne training_style_id)
- API: DELETE /target-groups prüft beide Tabellen (CASCADE-Schutz)

Architecture:
- Eine Zielgruppe kann mehreren Stilen zugeordnet werden
- Basis für Admin Tree-View + M:N Matrix UI

Version: 0.3.4
Module: catalogs 1.3.0
2026-04-23 10:37:56 +02:00
..
auth.py fix: Change created to created_at in sessions INSERT 2026-04-21 21:18:09 +02:00
catalogs.py feat: Migration 009 - Zielgruppen M:N Refactoring 2026-04-23 10:37:56 +02:00
clubs.py feat: Clubs & Organization Management complete 2026-04-22 16:48:02 +02:00
exercises.py feat: Exercises-Router M:N Zuordnungen 2026-04-23 08:51:45 +02:00
profiles.py fix: Add /profiles/me endpoint for session persistence 2026-04-22 15:46:40 +02:00
skills.py feat: Skills & Methods catalog complete 2026-04-22 16:50:31 +02:00
training_planning.py feat: Training Planning (core feature) complete 2026-04-22 16:54:34 +02:00