Ejemplo n.º 1
0
from django.views import defaults as default_views
{%- if cookiecutter.api_only_mode == 'y' %}
from drf_spectacular.views import SpectacularAPIView
from drf_spectacular.views import SpectacularRedocView
from drf_spectacular.views import SpectacularSwaggerView
{%- else %}
from django.views.generic import TemplateView
{%- endif %}
{%- if cookiecutter.use_drf == 'y' and cookiecutter.api_only_mode == 'n' %}
from rest_framework.authtoken.views import obtain_auth_token
{%- endif %}

urlpatterns = [
    {%- if cookiecutter.api_only_mode == 'y' %}
    path('api/schema/', SpectacularAPIView.as_view(), name='schema'),
    path('api/swagger/', SpectacularSwaggerView.as_view(url_name='schema'), name='schema-swagger-ui'),
    path('api/redoc/', SpectacularRedocView.as_view(url_name='schema'), name='schema-redoc'),
    path('api/users/', include('{{ cookiecutter.project_slug }}.users.urls', namespace='users')),
    {%- elif cookiecutter.use_drf == 'y' %}
    # API base url
    path('api/', include('config.api_router')),
    # DRF auth token
    path('auth-token/', obtain_auth_token),
    {%- else %}
    path('', TemplateView.as_view(template_name='pages/home.html'), name='home'),
    path(
        'about/', TemplateView.as_view(template_name='pages/about.html'), name='about'
    ),
    # Django Admin, use {% raw %}{% url 'admin:index' %}{% endraw %}
    path(settings.ADMIN_URL, admin.site.urls),
    # User management
Ejemplo n.º 2
0
from rest_framework import routers
from comite_api.settings import DEBUG
from core import views
from rest_framework_simplejwt import views as jwt_views

router = routers.DefaultRouter()
router.register("people", views.PersonViewSet)
router.register("families", views.FamilyViewSet)
router.register("donations", views.DonationViewSet)

urlpatterns = [
    path("api/token/",
         jwt_views.TokenObtainPairView.as_view(),
         name="token_obtain_pair"),
    path("api/token/refresh/",
         jwt_views.TokenRefreshView.as_view(),
         name="token_refresh"),
    path("api/", include(router.urls)),
    path("api/admin/", admin.site.urls),
]

if DEBUG:
    urlpatterns += [
        path("api/docs/schema/", SpectacularAPIView.as_view(), name="schema"),
        path(
            "api/docs/schema/swagger-ui/",
            SpectacularSwaggerView.as_view(url_name="schema"),
            name="swagger-ui",
        ),
    ]
Ejemplo n.º 3
0
from django.urls import path, include
from drf_spectacular.views import SpectacularSwaggerView, SpectacularAPIView

from api import views
from api.routes import CustomRouter

# Personalização de Roteador para endpoints apenas de listagem, recuperação e exclusão
routers = CustomRouter()
routers.register("orgs", views.OrganizationViewSet)

urlpatterns = [
    # Rotas da documentação swagger-ui
    path('schema/', SpectacularAPIView.as_view(), name='schema'),
    path('', SpectacularSwaggerView.as_view(), name='swagger-ui'),

    # rotas de listagem, recuperação e exclusão da API
    path('api/', include(routers.urls))
]
Ejemplo n.º 4
0
from django.contrib import admin
from django.urls import path, include
from drf_spectacular.views import SpectacularAPIView, SpectacularSwaggerView

urlpatterns = [
    path('admin/', admin.site.urls),
    path('users/', include('apps.users.urls')),
    path('api_users/', include('apps.api_users.urls')),
    path("docs/schema/", SpectacularAPIView.as_view(), name="docs"),
    path("docs/",
         SpectacularSwaggerView.as_view(url_name="docs"),
         name="swagger-ui"),
]
Ejemplo n.º 5
0
    "series": SeriesSitemap(),
    "team": TeamSitemap(),
    "static": StaticViewSitemap,
}

urlpatterns = [
    path("admin/", admin.site.urls),
    path("api/", include(api_urls)),
    path("api-auth/", include("rest_framework.urls")),
    path("arc/", include(arc_urls)),
    path("character/", include(character_urls)),
    path("contact/", include(contact_urls)),
    path("creator/", include(creator_urls)),
    path("api/schema/", SpectacularAPIView.as_view(), name="schema"),
    path(
        "docs/", SpectacularSwaggerView.as_view(url_name="schema"), name="swagger-ui",
    ),
    path("", include(home_urls)),
    path("issue/", include(issue_urls)),
    path("jsi18n/", JavaScriptCatalog.as_view(), name="javascript-catalog"),
    path("pages/", include(flatpage_urls)),
    path("publisher/", include(publisher_urls)),
    path("series/", include(series_urls)),
    path("team/", include(team_urls)),
    path("accounts/", include("users.urls")),
    path("accounts/", include("django.contrib.auth.urls")),
    path("week/", include(week_urls)),
    path(
        "sitemap.xml",
        sitemap,
        {"sitemaps": sitemaps},
Ejemplo n.º 6
0
        factory = APIRequestFactory()
        request = factory.get('x', content_type='application/vnd.oai.openapi+json')
        request = view.initialize_request(request)
    else:
        request = None
    schema = generator.get_schema(request=request, public=True)
    assert_schema(schema, f'tests/test_versioning_accept_{version}.yml')


urlpatterns_namespace = [
    path('x/', NamespaceVersioningViewset.as_view({'get': 'list'})),
    path('schema/', SpectacularAPIView.as_view(
        versioning_class=NamespaceVersioning
    ), name='schema-nv-versioned'),
    path('schema/ui', SpectacularSwaggerView.as_view(
        versioning_class=NamespaceVersioning, url_name='schema-nv-versioned'
    )),
]
urlpatterns_path = [
    path('x/', PathVersioningViewset2.as_view({'get': 'list'})),
    path('schema/', SpectacularAPIView.as_view(
        versioning_class=URLPathVersioning
    ), name='schema-pv-versioned'),
    path('schema/ui', SpectacularSwaggerView.as_view(
        versioning_class=URLPathVersioning, url_name='schema-pv-versioned'
    )),
]
urlpatterns_accept_header = [
    path('x/', AcceptHeaderVersioningViewset2.as_view({'get': 'list'})),
    path('schema/', SpectacularAPIView.as_view(
        versioning_class=AcceptHeaderVersioning
Ejemplo n.º 7
0
        name='action_history'),
    url(r'^%s' % get_system_setting('url_prefix'), include(ur)),
    url(r'^%sapi/v2/api-token-auth/' % get_system_setting('url_prefix'),
        tokenviews.obtain_auth_token),

    # drf-yasg = OpenAPI2
    url(r'^%sapi/v2/doc/' % get_system_setting('url_prefix'),
        schema_view.with_ui('swagger', cache_timeout=0),
        name='api_v2_schema'),

    # drf-spectacular = OpenAPI3
    url(r'^%sapi/v2/oa3/schema/' % get_system_setting('url_prefix'),
        SpectacularAPIView.as_view(),
        name='schema_oa3'),
    url(r'^%sapi/v2/oa3/swagger-ui/' % get_system_setting('url_prefix'),
        SpectacularSwaggerView.as_view(url=get_system_setting('url_prefix') +
                                       '/api/v2/oa3/schema/?format=json'),
        name='swagger-ui_oa3'),
    url(r'^robots.txt',
        lambda x: HttpResponse("User-Agent: *\nDisallow: /",
                               content_type="text/plain"),
        name="robots_file"),
    url(r'^manage_files/(?P<oid>\d+)/(?P<obj_type>\w+)$',
        views.manage_files,
        name='manage_files'),
]

urlpatterns += survey_urls

if hasattr(settings, 'DJANGO_METRICS_ENABLED'):
    if settings.DJANGO_METRICS_ENABLED:
        urlpatterns += [
Ejemplo n.º 8
0
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 include, path, re_path
from rest_framework import routers
from users import views
from rest_framework_jwt.views import obtain_jwt_token, refresh_jwt_token, verify_jwt_token

from drf_spectacular.views import SpectacularAPIView, SpectacularRedocView, SpectacularSwaggerView

router = routers.DefaultRouter()
router.register(r'user', views.UserViewSet)

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include(router.urls)),
    path('get_my_id/', views.get_user_id),
    path('api-token-auth/', obtain_jwt_token),
    path('api-token-refresh/', refresh_jwt_token),
    path('api-token-verify/', verify_jwt_token),
    path('schema/', SpectacularSwaggerView.as_view(), name='docs'),
    path('docs/',
         SpectacularSwaggerView.as_view(url_name='docs'),
         name='swagger-ui'),
]
Ejemplo n.º 9
0
    """)

    serializer_class = XSerializer
    queryset = I18nModel.objects.none()

    @extend_schema(summary=_('Main endpoint for creating X'), responses=None)
    def create(self, request, *args, **kwargs):
        pass  # pragma: no cover


router = routers.SimpleRouter()
router.register('x', XViewset, basename='x')
urlpatterns = [
    path('api/', include(router.urls)),
    path('api/schema/', SpectacularAPIView.as_view(), name='schema'),
    path('api/schema/swagger-ui/', SpectacularSwaggerView.as_view()),
]


@mock.patch('drf_spectacular.settings.spectacular_settings.DESCRIPTION',
            _('Lazy translated description with missing translation'))
def test_i18n_strings(no_warnings):
    with translation.override('de-de'):
        schema = generate_schema(None, patterns=urlpatterns)
        assert_schema(schema, 'tests/test_i18n.yml')


@pytest.mark.parametrize(['url', 'header', 'translated'],
                         [('/api/schema/', {}, False),
                          ('/api/schema/?lang=de', {}, True),
                          ('/api/schema/', {
Ejemplo n.º 10
0
    2. Add a URL to urlpatterns:  path('blog/', include('blog.urls'))
"""
from django.contrib import admin
from django.urls import path, include

from drf_spectacular.views import (SpectacularAPIView, SpectacularRedocView,
                                   SpectacularSwaggerView)
from rest_framework_simplejwt.views import TokenRefreshView
from backend.core.serializers.token import MyTokenObtainPairView

from django.conf.urls.static import static

from backend import settings
from backend.core.router import router

admin.autodiscover()
admin.site.enable_nav_sidebar = False

urlpatterns = [
    path('admin/', admin.site.urls),
    path('api/docs/', SpectacularSwaggerView.as_view(), name='swagger-ui'),
    path('api/docs/redoc/', SpectacularRedocView.as_view(), name='redoc'),
    path('api/docs/schema/', SpectacularAPIView.as_view(), name='schema'),
    path('auths/login/', MyTokenObtainPairView.as_view(), name='my_token'),
    path('auths/refresh/', TokenRefreshView.as_view(), name='token_refresh'),
    path('summernote/', include('django_summernote.urls')),
    path('', include(router.urls), name='create-user'),
]

urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
Ejemplo n.º 11
0
from django.contrib import admin
from django.contrib.staticfiles.storage import staticfiles_storage
from django.urls import include, path
from django.views.generic.base import RedirectView
from drf_spectacular.views import SpectacularAPIView, SpectacularSwaggerView

urlpatterns = [
    path('admin/', admin.site.urls),
    path('assembly/', include('ensembl_metadata.urls.assembly')),
    path('genome/', include('ensembl_metadata.urls.genome')),
    path('organism/', include('ensembl_metadata.urls.organism')),
    path('release/', include('ensembl_metadata.urls.datarelease')),
    path('taxonomy/', include('ncbi_taxonomy.urls')),
    path('schema/', SpectacularAPIView.as_view(), name='schema'),
    path(
        'docs/',
        SpectacularSwaggerView.as_view(
            template_name='swagger-ui.html',
            url_name='schema',
        ),
        name='swagger-ui',
    ),
    path('', RedirectView.as_view(url='docs/')),
    path('favicon.ico',
         RedirectView.as_view(url=staticfiles_storage.url('img/favicon.ico'))),
]
Ejemplo n.º 12
0
from django.contrib import admin
from django.urls import path, include
from drf_spectacular.views import SpectacularAPIView, SpectacularRedocView, SpectacularSwaggerView


urlpatterns = [
    path('admin/', admin.site.urls),
    path('api/', include('profiles.urls')),
    path('api/', include('news.urls')),

    path('auth/', include('djoser.urls')),
    # path('auth/', include('djoser.urls.authtoken')),
    path('auth/', include('djoser.urls.jwt')),

    path('api/schema/', SpectacularAPIView.as_view(), name='schema'),
    path('api/docs/', SpectacularSwaggerView.as_view(url_name='schema'), name='docs'),
    path('api/redoc/', SpectacularRedocView.as_view(url_name='schema'), name='redoc'),


]
Ejemplo n.º 13
0
                         basename='project-services')

# Routes for requirements
router.register(r'requirements', views.RequirementViewSet)

# Routes for resources
router.register(r'resources', views.ResourceViewSet)

# Routes for services
router.register(r'services', views.ServiceViewSet)
services_router = routers.NestedSimpleRouter(router,
                                             r'services',
                                             lookup='service')
services_router.register(r'requirements',
                         views.ServiceRequirementsViewSet,
                         basename='service-requirements')

# Combine the URLs from all the routers to make the URL patterns
urlpatterns = [
    path('me/', views.CurrentUserView.as_view(), name='current-user'),
    path('join/', views.ProjectJoinView.as_view(), name='project-join'),
    path('', include(router.urls)),
    path('', include(consortia_router.urls)),
    path('', include(projects_router.urls)),
    path('', include(services_router.urls)),
    path('schema.json', SpectacularAPIView.as_view(), name='openapi-schema'),
    path('doc/',
         SpectacularSwaggerView.as_view(url_name='openapi-schema'),
         name='openapi-docs'),
]
Ejemplo n.º 14
0
    path(r'v1/utils/token/obtain',
         obtain_jwt_token,
         name='obtain_jwt_token_v1'),
    path(r'v1/utils/token/verify',
         verify_jwt_token,
         name='verify_jwt_token_v1'),
]

urlpatterns += mongo_urlpatterns
urlpatterns += emgapi_urlpatterns
urlpatterns += [
    path(r'schema/',
         SpectacularAPIView.as_view(api_version='emgapi_v1'),
         name='schema'),
    path(r'docs/',
         SpectacularSwaggerView.as_view(url_name='schema',
                                        url=settings.EMG_URL + '/schema'),
         name='swagger-ui'),
]

# admin
if settings.ADMIN:
    urlpatterns += [
        path('grappelli/', include('grappelli.urls')),
        path('admin/', admin.site.urls),
    ]

if settings.DEBUG:
    import debug_toolbar
    urlpatterns = [
        path(r'__debug__/', include(debug_toolbar.urls)),
    ] + urlpatterns
Ejemplo n.º 15
0
    path("algorithm/", AlgorithmListView.as_view(), name="algorithm-list"),
    path("algorithm/<int:pk>", AlgorithmView.as_view(), name="algorithm-detail"),
    # Health check urls
    path("looplijsten/health", health_default, name="health-default"),
    path("looplijsten/health_bwv", health_bwv, name="health-bwv"),
    path("health/", include("health_check.urls")),
    # The API for requesting data
    path("api/v1/", include((v1_urls, "app"), namespace="v1")),
    path("api/v2/", include((v1_urls, "app"), namespace="v2")),
    # # Swagger/OpenAPI documentation
    path(
        "api/v1/schema/", SpectacularAPIView.as_view(api_version="v1"), name="schema-v1"
    ),
    path(
        "api/v1/swagger/",
        SpectacularSwaggerView.as_view(url_name="schema-v1"),
        name="swagger-ui",
    ),
    path(
        "api/v2/schema/", SpectacularAPIView.as_view(api_version="v2"), name="schema-v2"
    ),
    path(
        "api/v2/swagger/",
        SpectacularSwaggerView.as_view(url_name="schema-v2"),
        name="swagger-ui",
    ),
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

# JSON handlers for errors
handler500 = "rest_framework.exceptions.server_error"
handler400 = "rest_framework.exceptions.bad_request"
Ejemplo n.º 16
0
from django.conf import settings
from django.urls import include, path
from rest_framework.routers import SimpleRouter

from {{cookiecutter.project_slug}}.users.api.views import UserViewSet

app_name = "api"


router = SimpleRouter()
router.register("users", UserViewSet)

paths = router.urls
paths += [
    path("", include("dj_rest_auth.urls")),
    path("registration/", include("dj_rest_auth.registration.urls")),
]

if "drf_spectacular" in settings.INSTALLED_APPS:
    from drf_spectacular.views import SpectacularAPIView, SpectacularSwaggerView

    paths += [
        path("schema/", SpectacularAPIView.as_view(), name="schema"),
        path("schema/swagger-ui/", SpectacularSwaggerView.as_view(url_name="api:v1:schema"), name="swagger-ui"),
    ]

urlpatterns = [path("v1/", include((paths, "v1")))]
Ejemplo n.º 17
0
    ),
    path(
        "relations/resolved/<int:pid>/create",
        PackageRelatedVulnerablityCreate.as_view(),
        name="resolved_package_create",
    ),
    path(
        "relations/reference/<int:vid>/create",
        VulnerabilityReferenceCreate.as_view(),
        name="vulnerability_reference_create",
    ),
]
urlpatterns = [
    path("admin/", admin.site.urls),
    path("api/schema/", SpectacularAPIView.as_view(), name="schema"),
    path("api/docs", SpectacularSwaggerView.as_view(), name="swagger-ui"),
    path("packages/search", PackageSearchView.as_view(),
         name="package_search"),
    path("packages/<int:pk>", PackageUpdate.as_view(), name="package_view"),
    path("vulnerabilities/<int:pk>",
         VulnerabilityDetails.as_view(),
         name="vulnerability_view"),
    path("vulnerabilities/search",
         VulnerabilitySearchView.as_view(),
         name="vulnerability_search"),
    path("", HomePage.as_view(), name="home"),
    path(r"api/", include(api_router.urls)),
]

if ENABLE_CURATION:
    urlpatterns.extend(curation_views)
Ejemplo n.º 18
0
from django.contrib import admin
from django.urls import include, path
from drf_spectacular.views import SpectacularJSONAPIView, SpectacularSwaggerView

urlpatterns = [
    path("", include("api.urls")),
    path("admin/", admin.site.urls),
    path("openapi.json", SpectacularJSONAPIView.as_view(), name="schema"),
    path("docs/", SpectacularSwaggerView.as_view(url_name="schema")),
]
Ejemplo n.º 19
0
from django.urls import path
from drf_spectacular.views import SpectacularAPIView, SpectacularRedocView, SpectacularSwaggerView
from rest_framework_simplejwt.views import TokenObtainPairView, TokenRefreshView

from api import views

app_name = "api"
urlpatterns = [
    # Schema and documentation
    path('schema', SpectacularAPIView.as_view(), name='schema'),
    path('schema/swagger-ui', SpectacularSwaggerView.as_view(url_name='api:schema'), name='swagger-ui'),
    path('schema/redoc', SpectacularRedocView.as_view(url_name='api:schema'), name='redoc'),

    path('token', TokenObtainPairView.as_view(), name='token_obtain_pair'),
    path('token/refresh', TokenRefreshView.as_view(), name='token_refresh'),

    path('sound_effects', views.SoundEffectList.as_view(), name="sound_effects"),
    path('sound_effects/<int:pk>', views.SoundEffectDetail.as_view(), name="sound_effect"),
    path('sound_effects/<int:pk>/audio', views.SoundEffectAudio.as_view(), name="sound_effect_audio"),

    path('sound_effects/from_yt', views.CreateSoundEffectFromYt.as_view(), name="sound_effect_from_yt"),

    path('categories', views.CategoryList.as_view(), name="categories"),
    path('categories/<str:category_name>/sound_effects', views.SoundEffectsByCategory.as_view(),
         name="sound_effects_by_category"),

    path('favourites', views.FavouritesList.as_view(), name="favourites"),
    path('favourites/<int:pk>', views.FavouritesDetail.as_view(), name="favourites_detail"),
    path('favourites/<int:pk>/sound_effects', views.FavouritesSoundEffects.as_view(), name="favourites_sound_effects"),

    path('bot/play_sound', views.BotPlaySound.as_view(), name="play_sound"),
Ejemplo n.º 20
0
    path(
        "relations/resolved/<int:pid>/create",
        PackageRelatedVulnerablityCreate.as_view(),
        name="resolved_package_create",
    ),
    path(
        "relations/reference/<int:vid>/create",
        VulnerabilityReferenceCreate.as_view(),
        name="vulnerability_reference_create",
    ),
]
urlpatterns = [
    path("admin/", admin.site.urls),
    path('api/schema/', SpectacularAPIView.as_view(), name='schema'),
    path('api/schema/swagger-ui/',
         SpectacularSwaggerView.as_view(),
         name='swagger-ui'),
    path("packages/search", PackageSearchView.as_view(),
         name="package_search"),
    path("packages/<int:pk>", PackageUpdate.as_view(), name="package_view"),
    path("vulnerabilities/<int:pk>",
         VulnerabilityDetails.as_view(),
         name="vulnerability_view"),
    path("vulnerabilities/search",
         VulnerabilitySearchView.as_view(),
         name="vulnerability_search"),
    path("", HomePage.as_view(), name="home"),
    path(r"api/", include(api_router.urls))
]

if ENABLE_CURATION:
Ejemplo n.º 21
0
"""slasty URL Configuration

The `urlpatterns` list routes URLs to views. For more information please see:
    https://docs.djangoproject.com/en/3.1/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, include
from drf_spectacular.views import SpectacularAPIView, SpectacularSwaggerView

urlpatterns = [
    # path('admin/', admin.site.urls),
    path('schema/', SpectacularAPIView.as_view(), name='schema'),
    path('docs', SpectacularSwaggerView.as_view(url_name='schema'), name='swagger-ui'),
    path('', include('api_v1.urls'))
]
Ejemplo n.º 22
0
Archivo: urls.py Proyecto: hmpf/Argus
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 include, path, re_path

from drf_spectacular.views import SpectacularAPIView, SpectacularSwaggerView
from social_django.urls import extra

from argus.auth.views import ObtainNewAuthToken
from argus.dataporten import views as dataporten_views
from argus.site.views import error


psa_urls = [
    # Overrides social_django's `complete` view
    re_path(fr"^complete/(?P<backend>[^/]+){extra}$", dataporten_views.login_wrapper, name="complete"),
    path("", include("social_django.urls", namespace="social")),
]

urlpatterns = [
    # path(".error/", error),  # Only needed when testing error pages and error behavior
    path("admin/", admin.site.urls),
    path("oidc/", include(psa_urls)),
    path("api/schema/", SpectacularAPIView.as_view(api_version="v1"), name="schema-v1-old"),
    path("api/schema/swagger-ui/", SpectacularSwaggerView.as_view(url_name="schema-v1-old"), name="swagger-ui-v1-old"),
    path("api/v1/", include(("argus.site.api_v1_urls", "api"), namespace="v1")),
    # path("api/v2/", include(("argus.site.api_v2_urls", "api"), namespace="v2")),
]
Ejemplo n.º 23
0
                             content_type="text/plain")),
    path(
        "sitemap.xml",
        sitemap,
        {
            "sitemaps": {
                "static": StaticViewSitemap,
                "dynamic": GenericSitemap({"queryset": Job.objects.all()})
            }
        },
        name="django.contrib.sitemaps.views.sitemap",
    ),
    path("api/", include("api.urls")),
    path("api/token/", TokenObtainPairView.as_view(),
         name="token_obtain_pair"),
    path("api/token/refresh/",
         TokenRefreshView.as_view(),
         name="token_refresh"),
    path("api/token/verify/", TokenVerifyView.as_view(), name="token_verify"),
    # Swagger UI for DRF.
    path("api/schema/",
         SpectacularAPIView.as_view(api_version="v3"),
         name="schema"),
    path(
        "api/docs/",
        SpectacularSwaggerView.as_view(template_name="swagger-ui.html",
                                       url_name="schema"),
        name="swagger-ui",
    ),
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
Ejemplo n.º 24
0
    1. Import the include() function: from django.urls import include, path
    2. Add a URL to urlpatterns:  path('blog/', include('blog.urls'))
"""
from django.conf.urls.i18n import i18n_patterns
from django.contrib import admin
from django.conf import settings
from django.conf.urls.static import static
from django.urls import path, include
from django.views.generic import RedirectView
from drf_spectacular.views import SpectacularAPIView, SpectacularSwaggerView

from common.urls import common_urls

urlpatterns = [
    path("", RedirectView.as_view(pattern_name="admin:index", permanent=True)),
    path("api/admin/docs/", include("django.contrib.admindocs.urls"), name="docs"),
    path("i18n/", include("django.conf.urls.i18n")),
    path("api/schema/", SpectacularAPIView.as_view(), name="schema"),
    path("api/schema/swagger-ui/", SpectacularSwaggerView.as_view(url_name="schema")),
    path("api/", include(common_urls)),
] + i18n_patterns(
    path("api/admin/", admin.site.urls),
)

if settings.DEBUG:
    import debug_toolbar

    urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
    urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
    urlpatterns += [path("api/__debug__/", include(debug_toolbar.urls), name="debug")]
Ejemplo n.º 25
0
    path(settings.ADMIN_SITE_URL, admin.site.urls),
]

urlpatterns.append(
    path(
        f"{API_PATH_PREFIX}/v3/openapi.json",
        SpectacularJSONAPIView.as_view(),
        name="schema",
    ))

urlpatterns.append(
    path(
        f"{API_PATH_PREFIX}/v3/openapi.yaml",
        SpectacularYAMLAPIView.as_view(),
        name="schema-yaml",
    ))

urlpatterns.append(
    path(
        f"{API_PATH_PREFIX}/v3/redoc/",
        SpectacularRedocView.as_view(),
        name="schema-redoc",
    ))

urlpatterns.append(
    path(
        f"{API_PATH_PREFIX}/v3/swagger-ui/",
        SpectacularSwaggerView.as_view(url_name='schema'),
        name='swagger-ui',
    ))
Ejemplo n.º 26
0
if extra_routes:
    extra_routes = reduce(lambda a, b: a + b,
                          [route[1] for route in extra_routes])
    urlpatterns += extra_routes

# API urls
urlpatterns += [
    # FIXME: legacy, to remove ASAP
    path('docs/openapi.json',
         SpectacularJSONAPIView.as_view(api_version="v1"),
         name='schema-v1-legacy'),
    path('api/schema-v1/',
         SpectacularJSONAPIView.as_view(api_version="v1"),
         name='schema-v1'),
    path('api/schema-v1/swagger/',
         SpectacularSwaggerView.as_view(url_name='schema-v1'),
         name='docs-index-v1'),
    path('api/schema-v1/redoc/',
         SpectacularRedocView.as_view(url_name='schema-v1')),
    path('api/schema-v2/',
         SpectacularJSONAPIView.as_view(api_version="v2"),
         name='schema-v2'),
    path('api/schema-v2/swagger/',
         SpectacularSwaggerView.as_view(url_name='schema-v2'),
         name='docs-index-v2'),
    path('api/schema-v2/redoc/',
         SpectacularRedocView.as_view(url_name='schema-v2')),
    path('api/v1/', include("modoboa.urls_api_v1", namespace="v1")),
    path('api/v2/', include("modoboa.urls_api_v2", namespace="v2")),
]
Ejemplo n.º 27
0
from django.urls import include, path

from drf_spectacular.views import SpectacularAPIView, SpectacularSwaggerView

from argus.auth.views import ObtainNewAuthToken

openapi_urls = [
    path("", SpectacularAPIView.as_view(api_version="v2"), name="schema"),
    path("swagger-ui/",
         SpectacularSwaggerView.as_view(url_name="v2:openapi:schema"),
         name="swagger-ui"),
]

tokenauth_urls = [
    path("", ObtainNewAuthToken.as_view(), name="api-token-auth"),
]

urlpatterns = [
    path("schema/", include((openapi_urls, "openapi"))),
    path("auth/", include("argus.auth.urls")),
    path("incidents/", include("argus.incident.urls")),
    path("notificationprofiles/", include("argus.notificationprofile.urls")),
    path("token-auth/", include((tokenauth_urls, "auth"))),
]
Ejemplo n.º 28
0
urlpatterns = [
    #  Django Rest Framework API v2
    url(r'^%sapi/v2/' % get_system_setting('url_prefix'), include(v2_api.urls)),
    # action history
    url(r'^%shistory/(?P<cid>\d+)/(?P<oid>\d+)$' % get_system_setting('url_prefix'), views.action_history,
        name='action_history'),
    url(r'^%s' % get_system_setting('url_prefix'), include(ur)),
    url(r'^%sapi/v2/api-token-auth/' % get_system_setting('url_prefix'), tokenviews.obtain_auth_token, name='api-token-auth'),
    url(r'^%sapi/v2/user_profile/' % get_system_setting('url_prefix'), UserProfileView.as_view(), name='user_profile'),

    # drf-yasg = OpenAPI2
    url(r'^%sapi/v2/doc/' % get_system_setting('url_prefix'), schema_view.with_ui('swagger', cache_timeout=0), name='api_v2_schema'),

    # drf-spectacular = OpenAPI3
    url(r'^%sapi/v2/oa3/schema/' % get_system_setting('url_prefix'), SpectacularAPIView.as_view(), name='schema_oa3'),
    url(r'^%sapi/v2/oa3/swagger-ui/' % get_system_setting('url_prefix'), SpectacularSwaggerView.as_view(url=get_system_setting('url_prefix') + '/api/v2/oa3/schema/?format=json'), name='swagger-ui_oa3'),

    url(r'^robots.txt', lambda x: HttpResponse("User-Agent: *\nDisallow: /", content_type="text/plain"), name="robots_file"),
    url(r'^manage_files/(?P<oid>\d+)/(?P<obj_type>\w+)$', views.manage_files, name='manage_files'),

]

urlpatterns += survey_urls

if hasattr(settings, 'DJANGO_METRICS_ENABLED'):
    if settings.DJANGO_METRICS_ENABLED:
        urlpatterns += [url(r'^%sdjango_metrics/' % get_system_setting('url_prefix'), include('django_prometheus.urls'))]

if hasattr(settings, 'SAML2_ENABLED'):
    if settings.SAML2_ENABLED:
        # django saml2