Files
links/.history/backend/api/urls_20251029194633.py
2025-10-29 20:22:35 +09:00

39 lines
1.6 KiB
Python

from django.urls import path
from rest_framework_simplejwt.views import TokenObtainPairView, TokenRefreshView
from .views import (
RegisterView,
UserProfileView,
LinkViewSet,
LinkGroupViewSet,
PublicUserGroupsView
)
from rest_framework.routers import DefaultRouter
from drf_spectacular.views import SpectacularAPIView, SpectacularSwaggerView
router = DefaultRouter()
router.register('links', LinkViewSet, basename='link')
router.register('groups', LinkGroupViewSet, basename='group')
urlpatterns = [
path('auth/register/', RegisterView.as_view(), name='auth_register'),
path('auth/register', RegisterView.as_view(), name='auth_register_no_slash'),
path('auth/login/', TokenObtainPairView.as_view(), name='token_obtain_pair'),
path('auth/login', TokenObtainPairView.as_view(), name='token_obtain_pair_no_slash'),
path('auth/refresh/', TokenRefreshView.as_view(), name='token_refresh'),
path('auth/refresh', TokenRefreshView.as_view(), name='token_refresh_no_slash'),
path('auth/user/', UserProfileView.as_view(), name='user-profile'), # ← новый
path('auth/user', UserProfileView.as_view(), name='user-profile-no-slash'),
path('users/<str:username>/public/',
PublicUserGroupsView.as_view(),
name='public-user-groups'
),
# схема OpenAPI
path('schema/', SpectacularAPIView.as_view(), name='schema'),
# Swagger UI, берёт шаблон из drf_spectacular_sidecar
path(
'swagger/',
SpectacularSwaggerView.as_view(url_name='schema'),
name='swagger-ui'
),
] + router.urls