Yii2 aktív rekord
Emlékszem, hogy az előző cikkek egyikében véletlenül megérintettük az Active Record osztályt. Egy gyors ismeretséghez létrehoztuk a PostController és a Category modellt. Az adatbázisban egy táblázati kategória is szerepel. Alapértelmezés szerint a modell ugyanúgy működik, mint emlékszel, ugyanazt a névtáblázatot. A modellünk nagyon egyszerű:
Annak érdekében, hogy a rekordok gyűjtését a kategória táblából szerezzük be, csak néhány sort használunk:
Ezekben a sorokban csak az Active Record osztály képességeit használjuk. Általában a meghatározott osztály használatához szükséges:
kapjuk meg a modell objektumot, és hozzuk létre a lekérdezési objektumot a keresési módszer hívásával;

Az YII2 keretrendszer. Gyors fejlesztés a modern PHP keretrendszerrel
Ismerje meg a modern webfejlesztés bonyolultságait az YII2 keretrendszer segítségével
szükség esetén állítsa be a kérés objektumot, hivatkozva a lekérdezés készítésének módszereire (ahol, limit, orderBy stb.);
hívja fel a szükséges adatgyűjtési módszert, leggyakrabban mindegyik, egy vagy számláló.
A fenti kódban valójában hiányoztuk a lekérdezés konfigurálásának szakaszát, és ennek eredményeként a lekérdezés primitív, SELECT * FROM kategóriából származik. Most próbáljuk meg kicsit megnehezíteni, hogy a lekérdezések beállításához többféle módszert fordítunk.

A time mód paramétereként átadott egy string kifejezést. Ez a módszer azonban megérti a tömb formátumát is. Például ugyanazt az eredményt kapjuk ezzel a rekorddal:
El is tudjuk adni egy sor kijelentést. Tegyünk egy példakeresést a lekérdezés LIKE utasításával.
A rekord e változata leképezi a SELECT * FROM kategóriát, ahol a név "% s%". Ennek eredményeként valami ilyesmit kapunk:


Az YII2 keretrendszer. Gyors fejlesztés a modern PHP keretrendszerrel
Ismerje meg a modern webfejlesztés bonyolultságait az YII2 keretrendszer segítségével
A legfrissebb hírek az informatikai és webfejlesztésről a Telegram csatornán