Files
vikileo-shop/config/urls.py
2024-05-09 17:20:16 +03:00

51 lines
3.3 KiB
Python
Raw 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.contrib import admin
from django.urls import path, include
from django.conf import settings
from django.conf.urls.static import static
from rest_framework import permissions
from drf_yasg.views import get_schema_view
from drf_yasg import openapi
#from rest_framework_simplejwt.views import TokenObtainPairView, TokenRefreshView, TokenVerifyView
# Вставки из апсов приложения
# Машиночитаемая [схема] описывает, какие ресурсы доступны через API
schema_view = get_schema_view(
openapi.Info(
title="vikileo.shop API",
default_version='v1',
description="vikileo.shop API Documentation",
),
public=True,
permission_classes=(permissions.AllowAny,),
)
# Префикс для понтов, можно без него но сним проще ориентироваться что должно иди на фронт, а что для тестов.
api_prefix = 'api'
# Кортежи адресов для системных приложений
urlpatterns_system = [
path('admin/', admin.site.urls),# Адрес админ панели
path('swagger/', schema_view.with_ui('swagger', cache_timeout=0), name='schema-redoc'), # API сборник адресов
]
# Кортежи адресов для приложений
urlpatterns_apps = [
path('', include('main.urls')), # Адрес главной странице (заглушка)
path(f'{api_prefix}/', include('config.accounts.urls')), # Адрес управление учётными данными
#path(f'{api_prefix}/', include('system.comments.urls')), # Адрес комментариев от пользователей
#path(f'{api_prefix}/', include('todos.urls')), # Адрес статей
#path(f'{api_prefix}/', include('articles.urls')), # Адрес стадей для пользователей
]
# Кортежи адресов для тестовых приложений
urlpatterns_test = [
#path('/accounts/', include('system.accounts.urls')), # Адрес управление учётными данными
#path(f'{api_prefix}/token/', obtain_token, name='token_obtain_pair'),
#path(f'{api_prefix}/protected/', protected_view, name='protected_view'),
path('api-rest/', include('rest_framework.urls')), # API rest, допилить виюшку
#path(f'{api_prefix}/token/', TokenObtainPairView.as_view(), name='token_obtain_pair'), # Присвоение токена
#path(f'{api_prefix}/token/refresh/', TokenRefreshView.as_view(), name='token_refresh'), # Перевыдача токена
#path(f'{api_prefix}/token/verify/', TokenVerifyView.as_view(), name='token_verify'), # Верифекация токена
#path(f'{api_prefix}/', include('system.media.urls')), # Адрес файлаобменника
]
# Объединение кортежа адресов
urlpatterns = urlpatterns_system + urlpatterns_apps + urlpatterns_test
# Обслуживание файлов, загруженных пользователем во время разработки
if settings.DEBUG:
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)