mirror of
https://github.com/pacnpal/thrillwiki_django_no_react.git
synced 2025-12-20 07:11:08 -05:00
feat: complete monorepo structure with frontend and shared resources
- Add complete backend/ directory with full Django application - Add frontend/ directory with Vite + TypeScript setup ready for Next.js - Add comprehensive shared/ directory with: - Complete documentation and memory-bank archives - Media files and avatars (letters, park/ride images) - Deployment scripts and automation tools - Shared types and utilities - Add architecture/ directory with migration guides - Configure pnpm workspace for monorepo development - Update .gitignore to exclude .django_tailwind_cli/ build artifacts - Preserve all historical documentation in shared/docs/memory-bank/ - Set up proper structure for full-stack development with shared resources
This commit is contained in:
108
backend/apps/parks/urls.py
Normal file
108
backend/apps/parks/urls.py
Normal file
@@ -0,0 +1,108 @@
|
||||
from django.urls import path, include
|
||||
from . import views, views_search
|
||||
from apps.rides.views import ParkSingleCategoryListView
|
||||
from .views_roadtrip import (
|
||||
RoadTripPlannerView,
|
||||
CreateTripView,
|
||||
TripDetailView,
|
||||
FindParksAlongRouteView,
|
||||
GeocodeAddressView,
|
||||
ParkDistanceCalculatorView,
|
||||
)
|
||||
|
||||
app_name = "parks"
|
||||
|
||||
urlpatterns = [
|
||||
# Park views with autocomplete search
|
||||
path("", views.ParkListView.as_view(), name="park_list"),
|
||||
path("create/", views.ParkCreateView.as_view(), name="park_create"),
|
||||
# Add park button endpoint (moved before park detail pattern)
|
||||
path("add-park-button/", views.add_park_button, name="add_park_button"),
|
||||
# Location search endpoints
|
||||
path("search/location/", views.location_search, name="location_search"),
|
||||
path(
|
||||
"search/reverse-geocode/",
|
||||
views.reverse_geocode,
|
||||
name="reverse_geocode",
|
||||
),
|
||||
# Areas and search endpoints for HTMX
|
||||
path("areas/", views.get_park_areas, name="get_park_areas"),
|
||||
path("suggest_parks/", views_search.suggest_parks, name="suggest_parks"),
|
||||
path("search/", views.search_parks, name="search_parks"),
|
||||
# Road trip planning URLs
|
||||
path("roadtrip/", RoadTripPlannerView.as_view(), name="roadtrip_planner"),
|
||||
path("roadtrip/create/", CreateTripView.as_view(), name="roadtrip_create"),
|
||||
path(
|
||||
"roadtrip/<str:trip_id>/",
|
||||
TripDetailView.as_view(),
|
||||
name="roadtrip_detail",
|
||||
),
|
||||
# Road trip HTMX endpoints
|
||||
path(
|
||||
"roadtrip/htmx/parks-along-route/",
|
||||
FindParksAlongRouteView.as_view(),
|
||||
name="roadtrip_htmx_parks_along_route",
|
||||
),
|
||||
path(
|
||||
"roadtrip/htmx/geocode/",
|
||||
GeocodeAddressView.as_view(),
|
||||
name="roadtrip_htmx_geocode",
|
||||
),
|
||||
path(
|
||||
"roadtrip/htmx/distance/",
|
||||
ParkDistanceCalculatorView.as_view(),
|
||||
name="roadtrip_htmx_distance",
|
||||
),
|
||||
# Park detail and related views
|
||||
path("<slug:slug>/", views.ParkDetailView.as_view(), name="park_detail"),
|
||||
path("<slug:slug>/edit/", views.ParkUpdateView.as_view(), name="park_update"),
|
||||
path("<slug:slug>/actions/", views.park_actions, name="park_actions"),
|
||||
# Area views
|
||||
path(
|
||||
"<slug:park_slug>/areas/<slug:area_slug>/",
|
||||
views.ParkAreaDetailView.as_view(),
|
||||
name="area_detail",
|
||||
),
|
||||
# Park-specific category URLs
|
||||
path(
|
||||
"<slug:park_slug>/roller_coasters/",
|
||||
ParkSingleCategoryListView.as_view(),
|
||||
{"category": "RC"},
|
||||
name="park_roller_coasters",
|
||||
),
|
||||
path(
|
||||
"<slug:park_slug>/dark_rides/",
|
||||
ParkSingleCategoryListView.as_view(),
|
||||
{"category": "DR"},
|
||||
name="park_dark_rides",
|
||||
),
|
||||
path(
|
||||
"<slug:park_slug>/flat_rides/",
|
||||
ParkSingleCategoryListView.as_view(),
|
||||
{"category": "FR"},
|
||||
name="park_flat_rides",
|
||||
),
|
||||
path(
|
||||
"<slug:park_slug>/water_rides/",
|
||||
ParkSingleCategoryListView.as_view(),
|
||||
{"category": "WR"},
|
||||
name="park_water_rides",
|
||||
),
|
||||
path(
|
||||
"<slug:park_slug>/transports/",
|
||||
ParkSingleCategoryListView.as_view(),
|
||||
{"category": "TR"},
|
||||
name="park_transports",
|
||||
),
|
||||
path(
|
||||
"<slug:park_slug>/others/",
|
||||
ParkSingleCategoryListView.as_view(),
|
||||
{"category": "OT"},
|
||||
name="park_others",
|
||||
),
|
||||
# Include park-specific rides URLs
|
||||
path(
|
||||
"<slug:park_slug>/rides/",
|
||||
include("apps.rides.park_urls", namespace="rides"),
|
||||
),
|
||||
]
|
||||
Reference in New Issue
Block a user