Files
Flook fe67d491e2
Build & Push Docker Image (Backend) / build (push) Successful in 54s
feat: implement LMS core (CMS, Courses, Enrollment, Progress, Auth) (Admin + API)
2026-05-03 09:36:47 +07:00

38 lines
1.2 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
from django.urls import path, include
from rest_framework.routers import DefaultRouter
from apps.common.api.auto_router import auto_register
from apps.common.views import HealthCheckView
from apps.content.views import ArticleViewSet
from apps.courses.views import CourseViewSet
# Action-based Views (Enrollment / Progress)
from apps.courses.views import (
EnrollCourseView,
MyCoursesView,
CompleteLessonView,
)
# Router สำหรับ CMS-like API
router = DefaultRouter()
# ใช้ auto_register เฉพาะกับ CMSlike resources
auto_register(router, {
"articles" : ArticleViewSet,
"courses" : CourseViewSet,
})
urlpatterns = [
# Health check
path("health/", HealthCheckView.as_view(), name="health-check"),
# CMS-like API
path("api/", include(router.urls)),
# Enrollment (user ↔ course)
path("api/courses/<int:course_id>/enroll/", EnrollCourseView.as_view(), name="enroll-course"),
path("api/my/courses/", MyCoursesView.as_view(), name="my-courses"),
# Progress tracking (user ↔ lesson)
path("api/lessons/<int:lesson_id>/complete/", CompleteLessonView.as_view(), name="complete-lesson"),
]