feat(cms/studio): agregar plantillas de curso reutilizables

- backend: CRUD básico de course templates y endpoint para crear curso desde plantilla
- migration: tabla course_templates con datos JSON del curso base
- frontend: nueva pantalla /course-templates para guardar y aplicar plantillas
- navegación: acceso desde menú Cursos
This commit is contained in:
2026-04-06 15:34:57 -04:00
parent 5226da644c
commit 92b4e4a3ac
6 changed files with 538 additions and 0 deletions
+7
View File
@@ -222,6 +222,13 @@ async fn main() {
.route("/courses/generate", post(handlers::generate_course))
.route("/courses/{id}/export", get(handlers::export_course))
.route("/courses/import", post(handlers::import_course))
.route("/course-templates", get(handlers::list_course_templates))
.route(
"/course-templates/from-course/{id}",
post(handlers::create_course_template_from_course),
)
.route("/course-templates/{id}/apply", post(handlers::apply_course_template))
.route("/course-templates/{id}", delete(handlers::delete_course_template))
.route("/grading", post(handlers::create_grading_category))
.route("/grading/{id}", delete(handlers::delete_grading_category))
.route(