fix(featured-events): resolve event_type FK to name string in API response
model_to_dict() returns event_type as an integer PK; the DHS frontend reads ev.event_type_name to show the category badge. Added event_type_name resolution so the carousel displays e.g. "Festivals".
This commit is contained in:
@@ -5,6 +5,15 @@ Format follows [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), version
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
## [1.8.2] — 2026-04-06
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- **`FeaturedEventsAPI` now returns `event_type_name` string** — `model_to_dict()` serialises the `event_type` FK as an integer ID; the hero slider frontend reads `ev.event_type_name` to display the category badge, which was always `null`
|
||||||
|
- Added `data_dict['event_type_name'] = e.event_type.event_type if e.event_type else ''` after `model_to_dict(e)` to resolve the FK to its human-readable name (e.g. `"Festivals"`)
|
||||||
|
- No frontend changes required — `fetchHeroSlides()` already falls back to `ev.event_type_name`
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## [1.8.1] — 2026-04-06
|
## [1.8.1] — 2026-04-06
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|||||||
@@ -585,6 +585,7 @@ class FeaturedEventsAPI(APIView):
|
|||||||
event_list = []
|
event_list = []
|
||||||
for e in events:
|
for e in events:
|
||||||
data_dict = model_to_dict(e)
|
data_dict = model_to_dict(e)
|
||||||
|
data_dict['event_type_name'] = e.event_type.event_type if e.event_type else ''
|
||||||
try:
|
try:
|
||||||
thumb = EventImages.objects.get(event=e.id, is_primary=True)
|
thumb = EventImages.objects.get(event=e.id, is_primary=True)
|
||||||
data_dict['thumb_img'] = thumb.event_image.url
|
data_dict['thumb_img'] = thumb.event_image.url
|
||||||
|
|||||||
Reference in New Issue
Block a user