Files
thrilltrack-explorer/django-backend/config/urls.py

56 lines
1.7 KiB
Python

"""
URL configuration for config project.
The `urlpatterns` list routes URLs to views. For more information please see:
https://docs.djangoproject.com/en/4.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.contrib.sitemaps.views import sitemap
from django.urls import path, include
from django.conf import settings
from api.v1.api import api as api_v1
from apps.core.sitemaps import (
ParkSitemap,
RideSitemap,
CompanySitemap,
RideModelSitemap,
StaticSitemap,
)
# Sitemap configuration
sitemaps = {
'parks': ParkSitemap,
'rides': RideSitemap,
'companies': CompanySitemap,
'ride_models': RideModelSitemap,
'static': StaticSitemap,
}
urlpatterns = [
path("admin/", admin.site.urls),
path("api/v1/", api_v1.urls),
# Sitemap for SEO
path('sitemap.xml', sitemap, {'sitemaps': sitemaps}, name='sitemap'),
]
# Celery Flower monitoring (admin only, production only)
if not settings.DEBUG and settings.env.bool('FLOWER_ENABLED', default=False):
# In production, Flower should be behind authentication
# Access via: /flower/
# Configure FLOWER_BASIC_AUTH in environment variables
urlpatterns += [
path('flower/', include('flower.urls')),
]