weird header stuff

This commit is contained in:
pacnpal
2024-11-03 22:03:56 +00:00
parent d4b08bbaed
commit 9de9311670
34 changed files with 5047 additions and 185 deletions

View File

@@ -0,0 +1,35 @@
from django.db.models.signals import post_save, post_delete
from django.dispatch import receiver
from django.db.models import Count, Q
from rides.models import Ride
from .models import Park
def update_park_ride_counts(park):
"""Update total_rides and total_roller_coasters for a park"""
operating_rides = Q(status='OPERATING')
# Count total operating rides
total_rides = park.rides.filter(operating_rides).count()
# Count total operating roller coasters
total_coasters = park.rides.filter(
operating_rides,
category='RC'
).count()
# Update park counts
Park.objects.filter(id=park.id).update(
total_rides=total_rides,
total_roller_coasters=total_coasters
)
@receiver(post_save, sender=Ride)
def ride_saved(sender, instance, **kwargs):
"""Update park counts when a ride is saved"""
update_park_ride_counts(instance.park)
@receiver(post_delete, sender=Ride)
def ride_deleted(sender, instance, **kwargs):
"""Update park counts when a ride is deleted"""
update_park_ride_counts(instance.park)