website/website/urls.py

56 lines
1.9 KiB
Python
Raw Normal View History

2022-06-09 08:36:29 +01:00
from django.conf import settings
from django.urls import include, path, re_path
from django.views.decorators.cache import cache_page
2022-06-09 08:36:29 +01:00
from wagtail import urls as wagtail_urls
2022-06-12 15:17:28 +01:00
from wagtail.admin import urls as wagtailadmin_urls
2022-08-02 22:20:36 +01:00
from wagtail.contrib.sitemaps.views import sitemap
2022-06-09 08:36:29 +01:00
from wagtail.documents import urls as wagtaildocs_urls
from wagtail.images.views.serve import ServeView
2022-06-09 08:36:29 +01:00
from website.common.views import RobotsView, page_not_found
2022-08-19 09:36:03 +01:00
2022-06-09 08:36:29 +01:00
urlpatterns = [
path("admin/", include(wagtailadmin_urls)),
path("documents/", include(wagtaildocs_urls)),
2022-06-27 23:29:55 +01:00
path(
"code-block/",
include("website.contrib.code_block.urls"),
2022-06-27 23:29:55 +01:00
),
path(".well-known/", include("website.well_known.urls")),
re_path(
r"^images/([^/]*)/(\d*)/([^/]*)/[^/]*$",
ServeView.as_view(action="redirect"),
name="wagtailimages_serve",
),
path("sitemap.xml", cache_page(60 * 60)(sitemap), name="sitemap"),
2022-08-22 14:38:32 +01:00
path("robots.txt", cache_page(60 * 60)(RobotsView.as_view()), name="robotstxt"),
2022-08-19 09:36:03 +01:00
path("404/", page_not_found, name="404"),
2022-06-09 08:36:29 +01:00
]
2022-08-19 09:36:03 +01:00
if not settings.DEBUG:
handler404 = "website.common.views.page_not_found"
2022-06-09 08:36:29 +01:00
if settings.DEBUG:
from django.conf.urls.static import static
# Serve media files from development server
2022-06-09 08:36:29 +01:00
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
2022-06-13 22:43:54 +01:00
# Add django-browser-reload
urlpatterns.append(path("__reload__/", include("django_browser_reload.urls")))
2022-06-14 22:23:44 +01:00
# Add django-debug-toolbar
urlpatterns.append(path("__debug__/", include("debug_toolbar.urls")))
2022-06-09 08:36:29 +01:00
urlpatterns = urlpatterns + [
# For anything not caught by a more specific rule above, hand over to
# Wagtail's page serving mechanism. This should be the last pattern in
# the list:
path("", include(wagtail_urls)),
# Alternatively, if you want Wagtail pages to be served from a subpath
# of your site, rather than the site root:
# path("pages/", include(wagtail_urls)),
]