# Parks Models This document outlines the models in the `parks` app. ## `Park` - **File:** [`parks/models/parks.py`](parks/models/parks.py) - **Description:** Represents a theme park. ### Fields - `name` (CharField) - `slug` (SlugField) - `description` (TextField) - `status` (CharField) - `location` (GenericRelation to `location.Location`) - `opening_date` (DateField) - `closing_date` (DateField) - `operating_season` (CharField) - `size_acres` (DecimalField) - `website` (URLField) - `average_rating` (DecimalField) - `ride_count` (IntegerField) - `coaster_count` (IntegerField) - `operator` (ForeignKey to `parks.Company`) - `property_owner` (ForeignKey to `parks.Company`) - `photos` (GenericRelation to `media.Photo`) ## `ParkArea` - **File:** [`parks/models/areas.py`](parks/models/areas.py) - **Description:** Represents a themed area within a park. ### Fields - `park` (ForeignKey to `parks.Park`) - `name` (CharField) - `slug` (SlugField) - `description` (TextField) - `opening_date` (DateField) - `closing_date` (DateField) ## `Company` - **File:** [`parks/models/companies.py`](parks/models/companies.py) - **Description:** Represents a company that can be an operator or property owner. ### Fields - `name` (CharField) - `slug` (SlugField) - `roles` (ArrayField of CharField) - `description` (TextField) - `website` (URLField) - `founded_year` (PositiveIntegerField) - `headquarters` (CharField) - `parks_count` (IntegerField)