Active row našeptávání názvů sloupců
- thunderbuff
- Člen | 164
Lze nějak jednoduše zařítit, aby IDE našeptávalo sloupce při práci s ActiveRow? Teď v aplikaci kvůli tomu používám entity – ale to musím kopírovat data do entity a při ukládání zase z entity – a je to takové nehezké.
Šlo by extendovat ActiveRow a pomocí anotací @property umožnit našeptávání, ale to bych musel repozitáře přimět, aby vracely mojí třídu místo ActiveRow. A to znamená extendy patřičných tříd. Takovou cestou se vydává fabik/database, ale lze to udělat nějak „čistěji“?
- enumag
- Člen | 2118
Popsané řešení považuji za čisté, o žádném jednodušším nevím. Ono je to i poněkud nesmysl, i když IDE ví že je to ActiveRow, nemá jak odlišit z jaké konkrétní tabulky to ActiveRow bude aby podle toho napovídalo sloupce. Kromě toho používání entit ti dává víc než jen napovídání v IDE, takže nevidím důvod proč je nepoužívat. Zajímavě taky vypadá YetOrm.
- thunderbuff
- Člen | 164
Neříkám, že entitní přístup je úplně špatný – ale mé entity jsou jen datové obálky, co mimo read-only getterů neobsahují žádné metody. A některé metody Active Row by se moc hodily, hlavně ActiveRow::related(), který teď musím řešit různými oklikami a pokládám víc dotazů, než by položila Nette\Database.