Address zip/city Property Fix + Diagnostic Dump #211
Notifications
Total Time Spent: 17 seconds
kincses
17 seconds
No due date set.
Dependencies
No dependencies set.
Reference: kincses/service-finder#211
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
🔍 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.
▶️ Munka megkezdve: 2026-06-05 08:43:45
✅ 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.