add apps and drf_yasg

This commit is contained in:
behruz-dev
2025-07-30 16:14:47 +05:00
parent 180fa70758
commit da201800b4
29 changed files with 102 additions and 20 deletions

32
config/conf/drf_yasg.py Normal file
View File

@@ -0,0 +1,32 @@
from rest_framework import permissions
from drf_yasg.views import get_schema_view
from drf_yasg import openapi
schema_view = get_schema_view(
openapi.Info(
title="UyQur API",
default_version='v1',
description="Test description",
terms_of_service="https://www.google.com/policies/terms/",
contact=openapi.Contact(email="xoliqberdiyevbehru12@gmail.com"),
license=openapi.License(name="Felix IT Solutions License"),
),
public=False,
permission_classes=(permissions.IsAuthenticated,),
)
SWAGGER_SETTINGS = {
'SECURITY_DEFINITIONS': {
'Basic': {
'type': 'basic'
},
'Bearer': {
'type': 'apiKey',
'name': 'Authorization',
'in': 'header'
}
},
"USE_SESSION_AUTH": False
}

View File

@@ -19,8 +19,16 @@ ALLOWED_HOSTS = env.list('ALLOWED_HOSTS')
# Application definition
APPS = [
'core.apps.accounts',
'core.apps.shared',
]
INSTALLED_APPS = [
PACKAGES = [
'drf_yasg',
]
DJANGO_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
@@ -29,6 +37,12 @@ INSTALLED_APPS = [
'django.contrib.staticfiles',
]
INSTALLED_APPS = []
INSTALLED_APPS += DJANGO_APPS
INSTALLED_APPS += PACKAGES
INSTALLED_APPS += APPS
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',

View File

@@ -1,22 +1,29 @@
"""
URL configuration for config project.
The `urlpatterns` list routes URLs to views. For more information please see:
https://docs.djangoproject.com/en/5.2/topics/http/urls/
Examples:
Function views
1. Add an import: from my_app import views
2. Add a URL to urlpatterns: path('', views.home, name='home')
Class-based views
1. Add an import: from other_app.views import Home
2. Add a URL to urlpatterns: path('', Home.as_view(), name='home')
Including another URLconf
1. Import the include() function: from django.urls import include, path
2. Add a URL to urlpatterns: path('blog/', include('blog.urls'))
"""
from django.contrib import admin
from django.urls import path
from django.urls import path, include
from django.conf import settings
from django.conf.urls.static import static
from config.conf.drf_yasg import schema_view
urlpatterns = [
# Admin Panel
path('admin/', admin.site.urls),
# Api V1
path('api/v1/', include(
[
path('accounts/', include('core.apps.accounts.urls')),
path('shared/', include('core.apps.shared.urls')),
]
)),
# Swagger and Redoc
path('swagger/', schema_view.with_ui('swagger', cache_timeout=0), name='schema-swagger-ui'),
path('redoc/', schema_view.with_ui('redoc', cache_timeout=0), name='schema-redoc'),
]
# Media and Static Files
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)