mirror of
https://github.com/pacnpal/thrillwiki_django_no_react.git
synced 2025-12-20 10:31:09 -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:
67
backend/apps/location/admin.py
Normal file
67
backend/apps/location/admin.py
Normal file
@@ -0,0 +1,67 @@
|
||||
from django.contrib import admin
|
||||
from .models import Location
|
||||
|
||||
# DEPRECATED: This admin interface is deprecated.
|
||||
# Location data has been migrated to domain-specific models:
|
||||
# - ParkLocation in parks.models.location
|
||||
# - RideLocation in rides.models.location
|
||||
# - CompanyHeadquarters in parks.models.companies
|
||||
#
|
||||
# This admin interface is kept for data migration and cleanup purposes only.
|
||||
|
||||
|
||||
@admin.register(Location)
|
||||
class LocationAdmin(admin.ModelAdmin):
|
||||
list_display = (
|
||||
"name",
|
||||
"location_type",
|
||||
"city",
|
||||
"state",
|
||||
"country",
|
||||
"created_at",
|
||||
)
|
||||
list_filter = ("location_type", "country", "state", "city")
|
||||
search_fields = ("name", "street_address", "city", "state", "country")
|
||||
readonly_fields = ("created_at", "updated_at", "content_type", "object_id")
|
||||
|
||||
fieldsets = (
|
||||
(
|
||||
"⚠️ DEPRECATED MODEL",
|
||||
{
|
||||
"description": "This model is deprecated. Use domain-specific location models instead.",
|
||||
"fields": (),
|
||||
},
|
||||
),
|
||||
("Basic Information", {"fields": ("name", "location_type")}),
|
||||
("Geographic Coordinates", {"fields": ("latitude", "longitude")}),
|
||||
(
|
||||
"Address",
|
||||
{
|
||||
"fields": (
|
||||
"street_address",
|
||||
"city",
|
||||
"state",
|
||||
"country",
|
||||
"postal_code",
|
||||
)
|
||||
},
|
||||
),
|
||||
(
|
||||
"Content Type (Read Only)",
|
||||
{
|
||||
"fields": ("content_type", "object_id"),
|
||||
"classes": ("collapse",),
|
||||
},
|
||||
),
|
||||
(
|
||||
"Metadata",
|
||||
{"fields": ("created_at", "updated_at"), "classes": ("collapse",)},
|
||||
),
|
||||
)
|
||||
|
||||
def get_queryset(self, request):
|
||||
return super().get_queryset(request).select_related("content_type")
|
||||
|
||||
def has_add_permission(self, request):
|
||||
# Prevent creating new generic Location objects
|
||||
return False
|
||||
Reference in New Issue
Block a user