Laravel v12.50.0 – 3 újdonság, amit érdemes ismerni
A Laravel csapat kiadta a v12.50.0 verziót, amely több mint 40 pull requestet tartalmaz 20 közreműködőtől. Ebben a cikkben a három legfontosabb, fejlesztői élményt javító újdonságot mutatjuk be.
1. Új hasMany() metódus a Collection-ökön
A collection-ökön eddig is létezett a containsOneItem() és a containsManyItems() metódus, de valljuk be, ezek elég hosszúak és nehezen megjegyezhetők voltak. A v12.50.0-ban két új, tömörebb alternatíva érkezett:
A hasMany() boolean értéket ad vissza, és callback-et is elfogad, ha pontosítani szeretnéd, mire keresel:
A régi containsOneItem() és containsManyItems() metódusok Laravel 13-ban deprecated-té válnak, úgyhogy érdemes már most átszokni az újakra.
Közreműködő: @JosephSilber — #58550
2. Típusos getterek a Cache facade-on
A Config facade-on már régóta elérhetők a típusos getterek (getString(), getInteger() stb.), amelyek biztosítják, hogy a visszakapott érték a várt típusú legyen. Most ez a Cache facade-ra is megérkezett:
3. Új clamp() metódus a request adatokhoz
Ez a funkció különösen hasznos lapozásnál. Képzeld el, hogy van egy terméklistád, ahol a felhasználó kiválaszthatja, hány elemet lát oldalanként: 10, 25 vagy 50. Eddig semmi nem akadályozta meg, hogy valaki kézzel átírja az URL-ben a per_page paramétert mondjuk 5000-re — ami komoly terhelést okozhat a szerveren.
Az új clamp() metódussal ez egyszerűen megoldható:
Ha a felhasználó 5000-et ad meg, az automatikusan 50-re csökken. Ha 1-et, akkor 10-re nő. Nem kell többé kézzel validálni és korlátozni a lapozási értékeket.
Közreműködő: @cosmastech — #58608
Egyéb figyelemre méltó változások
A fenti három kiemelt újdonságon túl a release számos egyéb javítást és fejlesztést is tartalmaz:
A teljes changelog elérhető a GitHub release oldalon.
Köszönet a 20 közreműködőnek, akik ezt a kiadást lehetővé tették! 🚀
