Tharos / LeanMapper

Lean Mapper is a tiny ORM based on powerful Dibi database abstraction library for PHP.
MIT License
87 stars 35 forks source link

problém s kešování - možnost serializovat celý strom entit #80

Closed iinfo-dev-mk closed 8 years ago

iinfo-dev-mk commented 9 years ago

Teď už raději česky. Serializace přidaná v nedávno je fajn, ale nedá se moc použít pro ukládání do keší, které ji využívají a což je asi její hlavní využití v leanmapperu. Problém je v tom, že pokud zakešuji (serializuji) skupinu entit a pak nad nimi někde dále - typicky v šabloně - budu volat nějaké magické property pro získání navázaných entit, tak z principu leanmapperu se budou pokládat další dotazy. Tím ale přicházím o tu výhodu kešování.

Je možné se tomu vyhnout kešováním přímo v šablonách, ale jednak ne vždy to je v šablonách možné a také ne vždy je to vhodné.

Chtělo by to něco, co umí serializovat entitu resp. pole entit i s jejími vazebními entitami a potlačit tak následně paradoxně hlavní benefit leanmapperu - načítání dalších dat až když je potřeba.

castamir commented 8 years ago

ve verzi 3.0 bude trida EntityDataDecoder, jez muze byt ukazkou, jak neceho podobneho dosahnout