Address zip/city Property Fix + Diagnostic Dump #211

Closed
opened 2026-06-05 08:43:39 +02:00 by kincses · 2 comments
Owner

🔍 Probléma\nA frontend profil kártyán nem látszott az irányítószám és a város, mert a Pydantic AddressResponse zip/city mezői None értéket kaptak.\n\n## 🧠 Gyökér Ok\nA system.addresses tábla csak postal_code_id-t (FK) tárol, nem stringként a zip-et és city-t. A Pydantic séma -val dolgozik, de az Address SQLAlchemy modellen nem voltak és property-k, így Pydantic nem tudta kiolvasni a kapcsolódó GeoPostalCode rekordból az értékeket.\n\n## 🛠️ Javítás\n### 1. Backend: Address modell bővítése (backend/app/models/identity/address.py)\n- Hozzáadva és @property dekorátorok, amelyek a reláción keresztül visszaadják a GeoPostalCode.zip_code és GeoPostalCode.city értékeket.\n- A reláció (postal_code = relationship("GeoPostalCode", lazy="joined")) már létezett, csak a property-k hiányoztak.\n\n### 2. Frontend: Diagnosztikai JSON dump (frontend/src/views/ProfileView.vue)\n- Ideiglenes RÖNTGEN blokk hozzáadva a profil kártya aljára, ami nyers JSON-ban mutatja az authStore.user?.person?.address objektumot.\n\n## Eredmény\n- A Pydantic most már képes kitölteni a zip és city mezőket a kapcsolódó táblából.\n- A frontend diagnosztikai blokk segítségével könnyen ellenőrizhető, hogy a backend mit küld.

## 🔍 Probléma\nA frontend profil kártyán nem látszott az irányítószám és a város, mert a Pydantic AddressResponse zip/city mezői None értéket kaptak.\n\n## 🧠 Gyökér Ok\nA system.addresses tábla csak postal_code_id-t (FK) tárol, nem stringként a zip-et és city-t. A Pydantic séma -val dolgozik, de az Address SQLAlchemy modellen nem voltak és property-k, így Pydantic nem tudta kiolvasni a kapcsolódó GeoPostalCode rekordból az értékeket.\n\n## 🛠️ Javítás\n### 1. Backend: Address modell bővítése (backend/app/models/identity/address.py)\n- Hozzáadva és @property dekorátorok, amelyek a reláción keresztül visszaadják a GeoPostalCode.zip_code és GeoPostalCode.city értékeket.\n- A reláció (postal_code = relationship("GeoPostalCode", lazy="joined")) már létezett, csak a property-k hiányoztak.\n\n### 2. Frontend: Diagnosztikai JSON dump (frontend/src/views/ProfileView.vue)\n- Ideiglenes RÖNTGEN blokk hozzáadva a profil kártya aljára, ami nyers JSON-ban mutatja az authStore.user?.person?.address objektumot.\n\n## ✅ Eredmény\n- A Pydantic most már képes kitölteni a zip és city mezőket a kapcsolódó táblából.\n- A frontend diagnosztikai blokk segítségével könnyen ellenőrizhető, hogy a backend mit küld.
kincses added the Scope: FrontendType: BugStatus: In Progress labels 2026-06-05 08:43:46 +02:00
kincses started working 2026-06-05 08:43:46 +02:00
Author
Owner

▶️ Munka megkezdve: 2026-06-05 08:43:45

▶️ **Munka megkezdve:** 2026-06-05 08:43:45
kincses added Status: Done and removed Status: In Progress labels 2026-06-05 08:44:03 +02:00
kincses worked for 17 seconds 2026-06-05 08:44:03 +02:00
Author
Owner

Munka befejezve: 2026-06-05 08:44:03

Technikai Összefoglaló:
Backend: Added zip/city @property descriptors to Address model (backend/app/models/identity/address.py) that read from the postal_code relationship (GeoPostalCode). Frontend: Added diagnostic JSON dump block to ProfileView.vue showing raw authStore.user?.person?.address data. Root cause: Pydantic AddressResponse with from_attributes=True couldn't find zip/city attributes on the SQLAlchemy model since only postal_code_id FK existed.

⏱️ Az idő rögzítve.

✅ **Munka befejezve:** 2026-06-05 08:44:03 **Technikai Összefoglaló:** Backend: Added zip/city @property descriptors to Address model (backend/app/models/identity/address.py) that read from the postal_code relationship (GeoPostalCode). Frontend: Added diagnostic JSON dump block to ProfileView.vue showing raw authStore.user?.person?.address data. Root cause: Pydantic AddressResponse with from_attributes=True couldn't find zip/city attributes on the SQLAlchemy model since only postal_code_id FK existed. ⏱️ *Az idő rögzítve.*
Sign in to join this conversation.