Validace dat z různých zdrojů
- sKopheK
- Člen | 207
Ahoj,
řeším problém s přidáváním dat do databáze. Data mohou pocházet z uživatelem vyplněného formuláře, nebo importovaného XLS souboru. Jde mi o to, abych měl všechny definice polí hezky na jednom místě, tzn. i včetně validačních pravidel. Párkrát se to tady už probíralo, ale nic definitivního jsem nenašel.
Já to zatím vymyslel přes třídu implementující rozhraní Form\IControl + má zkopírováných asi 20 metod z různých formulářových prvků, aby se na ni dala navěsit pravidla. Jak byste na to šli vy?
- jiri.pudil
- Nette Blogger | 1032
Validitu a konzistenci dat by si měla hlídat samotná modelová vrstva, protože pak nemusíš tu validační logiku duplikovat ve formulářích, v importu z XLS, ve vstupu z REST API, atd. Tedy tím jedním místem by IMO měla být přímo entita nebo nějaká její obslužná třída. Např. v Doctrině to jde krásně vyřešit pomocí symfoního validátoru, který se pak dá mj. snadno napojit na formuláře v Nette.