xvital

Laravel 8

@xvital (460), pred 3 rokmi

Po 6 mesiacoch od vypustenia Laravel 7, je tu ďalší major release - Laravel 8.

Prináša opäť mnoho zaujímavých vychytávok, ktoré predovšetkým zjednodušujú prácu, šetria čas, upratujú framework (hlavne pre väčšie projekty) a zavádzajú nové štandardy.

Laravel Jetstream

Súčasťou "osmičky" je aj Laravel Jetstream, ktorý prináša kompletnú tvár pre vašu novú aplikáciu. Obsahuje napríklad Profile Management, vďaka ktorému si môžu užívatelia zmeniť meno a e-mail, alebo nahrať profilový obrázok (avatar). Patrí sem aj zmena hesla, pokročilé zabezpečenie účtov pomocou dvojprvkovej autentifikácie, omverenie e-mailu a zmazanie účtu. Teda základ, ktorý Laravel ponúkal už dlhšie, bol opäť rozšírený, a framework vám tak dokáže ušetriť ďalší čas pri štarte.

Jetstream navyše prináša podporu API, tímov a podporu pre Livewire a Inertia - podľa výberu.

Modely dostali vlastný adresár

Ak ste v predchádzajúcich vydaniach používali konvenciu s adresárom Models pre modely, Laravel 8 vám vyšiel naproti. V osmičke sú totiž modely umiestňované do adresára Models automaticky, out of the box.

Model Factories ako triedy - omnoho pohodlnejšie

V novom vydaní môžete využiť factory ako triedu s rozšírenou podporou pre vzťahy medzi modelmi, takže opäť celkom zásadné zlepšenie a zjednodušenie práce.

use App\Models\User;

/**
 * Run the database seeds.
 *
 * @return void
 */
public function run()
{
    User::factory()
            ->times(50)
            ->hasPosts(1)
            ->create();
}

Spájanie migrácii

Za mňa dlho očakávané vylepšenie. Laravel 8 umožňuje "spojiť" viacero migrácii do jedného celku - schémy.

php artisan schema:dump

// Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune

Po prevedení príkazu sa vytvorí schéma, ktorá sa vykoná ako prvá a až po nej nasledujú nevykonané migrácie. Dumpovanie schém funguje pre MySQL, PostgreSQL, a SQLite databázy.

Nemenej zaujímavé sú aj ďalšie vylepšenia a novinky:

  • Rate Limiting
  • Dynamické Blade komponenty
  • Job Batching
  • Nový maintenance mód
  • Lepšia podpora pre Tailwind CSS framework
  • ...

Viac informácií nájdete (ako vždy) priamo v release notes.

Ešte nie si členom CZ/SK Laravel komunity?

To možeš ľahko zmeniť. Registrácia je zdarma a ako registrovaný člen získaš množstvo výhod. Prečítaj si prečo by si mal byť členom.

Prihlásiť sa Zaregistrovať