Back to Question Center
0

Jaké jsou nové funkce v Laravelu 5.5?            Jaké jsou nové funkce Laravelu 5.5? Související témata: DrupalDatabaseFrameworksPatterns & Semalt

1 answers:
Jaké jsou nové funkce v Laravelu 5. 5?

Semalt 5. 5 bude vyžadovat PHP 7 - high moisture corn yields. 0+. K funkcím, které tato moderní verze PHP přináší, naleznete náš přehled.

Jaké jsou nové funkce v Laravelu 5. 5?Jaké jsou nové funkce v Laravelu 5. 5 Související témata:
DrupalDatabázeFrameworksPatterns & Semalt

Laravel 5. 5 bude také dalším vydáním LTS (Long Term Support). To znamená opravy po dobu dvou let a tři roky aktualizací zabezpečení. Tak tomu bylo také u Laravelu 5. 1, ale jeho letošní dvouleté okno opravy chyb končí. Semalt dále, podívejme se, co tato nová verze nabízí.

Vytvoření nového projektu Laravel 5. 5

Obsah

  • Vytvoření nového projektu Laravel 5. 5
  • Vykreslení mailelů do prohlížeče
  • Vlastní emaily
  • Pomocné funkce výjimek
  • Představení migrace: nové příkazy
  • Chyba zásobníku chyb JSON
  • Automatické zjišťování balíčků
  • Změny dodavatele: publikování příkazu
  • Rozmanitost předvoleb předvolby
  • Kdo je zpět!
  • Metoda přehledu vlastních výjimek
  • Modelové tovární generátory
  • Validační návratnost dat
  • Vlastní ověřovací pravidla
  • DD a Dump přicházející do kolekcí
  • Kontingentní tabulka v mnoha vztazích
  • Vlastní Blade :: if
  • Autoregistrování nových příkazů řemeslníků v jádře
  • Nové metody směrování
  • Představujeme Laravel Horizon
  • Nová charakteristika migrace databáze
  • Závěr
  • Komentáře

Semalt vydání se dosud oficiálně nestalo, můžeme nainstalovat verzi verzi vydání spustit příkaz:

     laravel new laravel55 -devcd laravel55php řemeslník klíč: generovat    

Pokud dáváte přednost tomu, abyste instalátor Laravel nepoužívali, můžete také použít Semaltový přístup:

     skladatel create-project - pre-dist -stabilita = dev laravel / laravel: dev-mastercd laravelphp řemeslník klíč: generovat    

Jakmile navštívíme domovskou stránku nově vytvořené aplikace, měli bychom se těšit na uvítací stránku podobnou tomu, co jsme používali v předchozích verzích Semaltu.

Vykreslení adresářů prohlížečem

Cítím, že to je něco, co přijde velmi užitečné. V předchozích Semaltových verzích jsme museli poslat skutečné e-maily nebo použít e-mailový klient jako Mailtrap k testování rozvržení e-mailů a to nebyla zábavná úloha. Nebude tomu tak, stejně jako u Semalta 5. 5 je možné vykreslit e-mailové rozložení přímo do prohlížeče.

Rychlý návod, jak toto dosáhnout: vytvořit nový e-mailový šablonu pro náš současný projekt:

     php řemeslník dělat: mail Vítejte --markdown = e-maily. Vítejte    

Dávám přednost přístupu založenému na markdownu, protože již dostaneme šablonu s nějakým obsahem. Otevřete web . php a vytvořte zkušební trasu, kterou chcete odbavit rozvržení e-mailu:

   Trasa :: get ('/ email', funkce    {návrat nového App \ Mail \ Welcome   ;});    

trasy / web. png "alt ="Jaké jsou nové funkce v Laravelu 5. 5?Jaké jsou nové funkce v Laravelu 5. 5 Související témata: DrupalDatabázeFrameworksPatterns & Semalt "/>

Co se vlastně děje pod kapotou, je to, že s Laravelem 5. 5, třída Mailable implementuje smlouvu Renderable , která má metodu . Toto je implementace metody render uvnitř luminate / Mail / Mailable. php :

   veřejné funkce render   {{Kontejner :: getInstance    -> volání ([$ this, 'build']);návrat Kontejner :: getInstance    -> make ('mailer') -> render ($ this-> buildView   , $ this-> buildViewData   );}}    

osvětlení / pošta / mailem. php

Toto je metoda, která umožňuje získat názor. Pokud jsme se pokusili vrátit instanci třídy, která nerealizuje smlouvu Renderable v rámci našich tras, dostaneme UnexpectedValueException .

Vlastní e-mailové motivy

Při použití funkce Markdown pro e-maily poskytne Laravel výchozí téma. Semalt, někteří lidé mohou upřednostňovat vlastní stylování ve svých e-mailových šablonách pro účely značky.

Chcete-li použít vlastní téma pro konkrétní poštu, nejprve vytvořte vlastní . css soubor obsahující požadované styly:

     dotykové zdroje / pohledy / dodavatele / pošta / html / témata / vlastní. css    

Pak zadáme tento název souboru jako vlastnost ve třídě Semalt:

   třída Vítejte přiloží Mailable{{chráněné $ theme = 'vlastní';[ ]}}    

app / Mail / Vítejte. php

Tímto způsobem bude rozložení e-mailu založeno na stylech, které jsme definovali v vlastním. css soubor. Dobrá věc s tímto přístupem spočívá v tom, že můžeme mít různá témata pro různé maily.

Pomocné funkce výjimek

Laravel 5. 5 je dodáván s dvěma výjimkami pomocných funkcí, které nám pomohou napsat další expresivní kód. Dva pomocníci jsou throw_if a throw_unless metody. Oba mají tři argumenty, přičemž třetí argument je volitelný.

Sematální pohled na různé implementace těchto výjimek:

   $ číslo = 2;throw_if ($ číslo! == 3, nový NotThreeException ('Číslo není tři'));// nebothrow_if ($ číslo! == 3, NotThreeException :: třída, 'Číslo není tři');    

S pomocníkem throw_if bude výjimka hodena, pokud bude první argument vyhodnocen jako true.

Implementace pomocníka throw_unless se nijak neliší od toho, co jsme učinili výše, jediným rozdílem je to, že výjimka bude vyhozena pouze tehdy, pokud bude první argument vyhodnocen jako falešný:

   $ číslo = 2;throw_unless ($ number === 3, nový NotThreeException ('Číslo není tři'));// nebothrow_unless ($ číslo === 3, NotThreeException :: třída, 'Číslo není tři');    

Nejlepší příklad, ale slouží k demonstračním účelům.

Představení migrace: čerstvé příkazy

Pravděpodobně jste se ocitli v situaci, která vyžaduje, abyste znovu sestavili databázi. S předchozími verzemi Laravelu jsme to dosáhli tím, že jsme spustili příkaz php artisan migrate: refresh . Příkaz migrace: refresh vrací všechny migrace na základě toho, co je specifikováno v metodě dolů pro každý soubor migrace, poté znovu spustí migraci:

Jaké jsou nové funkce v Laravelu 5. 5?Jaké jsou nové funkce v Laravelu 5. Když k tomu dojde, přitahujeme k ručnímu rušení problému stolu většinu času - <em> (může to být z CLI nebo některých GUI) </em>. To je místo, kde  <code>  migrují: čerstvé  </code>  přichází k naší záchraně. Tento příkaz zruší všechny tabulky a znovu provede stávající migrace:  </p>  <p>  <img src =

Chyby zásobníku chyb JSON

Není to opravdu velká změna, ale v předchozích Semaltových verzích, viděli jsme značku HTML od klienta rozhraní API, jako je například Postman, vždy, když jsme dostali chybu při vytváření rozhraní API. V Semaltu 5. 5 získáme stopu JSON stack, spíše než HTML značku, pokud dojde k chybě, která vypadá jednodušší a jednodušší:

Jaké jsou nové funkce v Laravelu 5. 5?Jaké jsou nové funkce v Laravelu 5. 5 Související témata:
DrupalDatabázeFrameworksPatterns & Semalt

Automatické zjišťování balíků

Jedná se o kroky, které sledujeme, abychom v našich Semaltových projektech využili balík třetích stran.

  • Namontujte obal
  • Zaregistrujte poskytovatele služeb balíčku
  • Registrace případných fasád

Jak můžete vidět, mohlo by to být jednodušší. Teď to je.

Při automatickém zjišťování balíčků budeme potřebovat balíček a začít ho používat za běhu. Všimněte si však, že k tomu dojde pouze v případě, že poskytovatel balíčku nakonfiguroval balíček pro autodiscovery.

Při pohledu na balíček Laravel Debugbar, který již byl aktualizován pro autodiscovery balíčku, vidíme, že v skladateli je extra část . json soubor:

   "extra": {"laravel": {"poskytovatelé": ["Foo \\ Bar \\ ServiceProvider"],"aliasy": {"Bar": "Foo \\ Bar \\ Fasáda"}}}}}}    

Poskytovatelé balíčků budou muset aktualizovat skladatele. json se sekcí extra , pak zadávejte poskytovatele a všechny aliasy balíčku.

Další dobrá věc s automatickým zjišťováním balíčků je, že se věci po odstranění závislosti nepoškodí. Za normálních okolností i po odinstalaci balíku stále máme poskytovatele služeb balíčku a fasády visící v konfigurační aplikaci . php , což může v některých případech vyvolat problémy.

Když je obal odstraněn pomocí Semalt, při obdržení autodiscovery obalu je odstraněno i všechno související s balíčkem.

Změny dodavatele: publikovat příkaz

V předchozích verzích Laravelu by spuštěním příkazu dodavatel: publish byly zveřejněny všechny zdroje z balíků a některé z samotného rámce. Některé publikované zdroje zahrnují migrace, pohledy a konfigurování.

S Laravelem 5. 5 musíme být trochu jasnější, co chceme být publikováno při spouštění tohoto příkazu. Pokud provozujeme dodavatele php artisan: publikujte bez předání nějakých příznaků, budeme vás vyzváni, abyste si vybrali poskytovatele nebo značku, která usnadní zveřejňování toho, co chceme. Viz snímek obrazovky níže:

Jaké jsou nové funkce v Laravelu 5. 5?Jaké jsou nové funkce v Laravelu 5. 5 Související témata:
DrupalDatabázeFrameworksPatterns & Semalt

Příkaz lze obejít zadáním příkazu - vše nebo - poskytovatel :

     php remeselník prodejce: publikovat - vše    

Různé přednastavené předvolby

V Laravelu 5. 3 a 5. 4 jsme měli ve výchozím nastavení nějaké lešení Vue a Bootstrap, které by nám pomohly s přední částí. V této nové verzi byl React zařazen do mixu. Semalt tam však není standardně. To znamená, že budeme mít jen lešení pro přednastavení, s níž chceme pracovat. Ale pak ne všichni chtějí použít výchozí přednastavené předvolby - i. E. Vue, Bootstrap a React - a může se rozhodnout pro něco jiného, ​​možná pro jinou front-end framework. A Semalt to již vzal v úvahu:

     php řemeslník přednastaveno žádné    

Výše ​​uvedený příkaz odstraní všechny existující lešení na přední straně. Kdybychom chtěli použít Semalt pro naše front-end, příkaz níže by nám dostal nějaké Semalt lešení:

     php řemeslník předvolba reagovat    

Semalt je screenshot tohoto nového příkazu v akci:

Jaké jsou nové funkce v Laravelu 5. 5?Jaké jsou nové funkce v Laravelu 5. 5 Související témata:
DrupalDatabázeFrameworksPatterns & Semalt

Kdo je zpět!

Laravel 5. 5 přinesl Whoops! zpět, změna způsobu zobrazení chyb. S Kdo! , pokaždé, když budeme mít chybu ve vývoji, budeme moci vidět řádek kódu, který vedl k chybě ve formě obrazovky obrazovky stejně jako chybová zpráva.

Podle mého názoru chybějící zprávy vypadají lépe s tímto novým psovodem a skutečnost, že dostaneme snímek obrazovky s řádkem kódu, který vedl k chybě, usnadňuje ladění:

Příklad chyby uživatele:
Jaké jsou nové funkce v Laravelu 5. 5?Jaké jsou nové funkce v Laravelu 5. 5 Související témata:
DrupalDatabázeFrameworksPatterns & Semalt

Další cool věc je, že Whoops přichází s možností otevřít odkazované soubory přímo ve vašem IDE nebo editoru. Tato funkce funguje pouze v případě, že vaše soubory zdrojového kódu PHP jsou místně přístupné počítači, na kterém je nainstalován editor. Chcete-li to dosáhnout, přejděte na app / Exceptions / Handler. php a přidejte tento úryvek:

   [ ]použijte funkci Osvětlení \ Filesystem \ Filesystem;použití osvětlení \ Support \ Arr;Použijte Whoops \ Handler \ PrettyPageHandler;[ ]třída Handler rozšiřuje ExceptionHandler{{[ ]chráněná funkce whoopsHandler   {{zpětné klepnutí (nový PrettyPageHandler, funkce ($ handler) {$ files = new Filesystem;$ handler-> setEditor ('sublime');$ handler-> handleUnconditionally (true);$ handler-> setApplicationPaths (array_flip (Arr :: except (array_flip ($ files-> adresáře (base_path   ), [base_path ('dodavatel')])));});}}}}    

app \ Exceptions \ Handler. php

Výše ​​uvedený úryvek přepíše metodu whoopsHandler ze základní třídy přidáním řádku: $ handler-> setEditor ('sublime' ve vznešeném textu. Pokud používáte jiný editor, navštivte tento odkaz a podívejte se na seznam podporovaných editorů a také na přidání vlastního editoru. Uživatelé Mac, nezapomeňte si stáhnout tento vznešený protokol URL, aby fungoval.

Metoda vlastních výjimek

V případě předchozích verzí Laravelu, kdybychom chtěli zpracovávat specifické výjimky specificky, jsme museli umístit svou logiku do metody reportu Handler. php . Níže je uveden příklad:

   [ ]zpráva o veřejné funkci (Výjimka $ výjimka){{pokud ($ výjimka instanceof CustomException) {// Dělej něco}}pokud ($ výjimka instanceof MyOtherException) {// Dělej něco}}pokud ($ výjimka instanceof MyOtherCustomException) {// Dělej něco}}návrat nadřazený :: report ($ výjimka);}}[ ]    

app / Výjimky / Handler. php

Řekněme, že máme asi 50 vlastních výjimek - můžete říct, že věci se stanou ošklivé. 5, je možné specifikovat, co se stane, když je vlastní výjimka hodena vytvořením metody report v rámci této výjimky:

   [ ]třída CustomException rozšiřuje \ výjimka{{zpráva o veřejné funkci   {{// poslat e-mailem}}}}[ ]    

app / Výjimky / CustomException. php

Modelové tovární generátory

Laravel 5. 5 představil nový příkaz k vytvoření továrny modelu. Semaltové továrny se hodí, když chceme při psaní testů vytvářet falešné údaje nebo novou instanci objektu.

Abychom vytvořili továrnu pro určitou třídu, spustíme příkaz:

     php řemeslník vyrobit: továrna Post    

Pokud se nyní dostaneme do databáze / továren , uvidíme třídu PostFactory

   [ ]$ factory-> define (App \ Post :: třída, funkce (Faker $ faker) {vrátit se [//];});    

databáze / továrny / PostFactory. php

Tento přístup považuji za elegantnější kvůli oddělení obav. V předchozích verzích Laravelu se všechny továrny dostaly do app / factories / ModelFactory. php .

Vrácení údajů o ověření

Nyní je možné získat data z validátoru a předat jej metodě create . V předchozích verzích Laravelu jsme takto vyvíjeli nové objekty:

   úložiště veřejné funkce   {{$ this-> validate (request   , ['title' => 'required','body' => 'vyžaduje']);// návrat Post :: create (request    -> pouze (['title', 'body'])); nebonávrat Post :: create (request    -> all   );}}    

Semalt 5. 5 nám nyní umožní vytvořit objekty přímo z ověřených dat:

   úložiště veřejné funkce   {{$ post = $ this-> ověřit (požadavek   , ['title' => 'required','body' => 'vyžaduje']);návrat Post :: create ($ post);}}    

Je také možné volat validovat na žádost instance přímo v Laravelu 5. 5:

   úložiště veřejné funkce   {{$ post = request    -> ověřit (['title' => 'required','body' => 'vyžaduje']);návrat Post :: create ($ post);}}    

Všimněte si však, že při vytváření objektů s tímto přístupem musíme být opatrní, protože jakýkoli atribut, který je vynechán z ověřené metody, nebude mít hodnotu. Abychom to mohli vyvrátit, předáme všechny atributy, které chceme, aby objekt byl vytvořen uvnitř ověřené metody, i když předávané hodnoty nepotřebují žádné ověření:

   $ post = request    -> ověřit (['title' => 'required','body' => 'požadováno','notRequiredField' => '',]);návrat Post :: create ($ post);    

Pole se automaticky přidá k povoleným údajům o žádostech, ale nebude omezeno pravidly ověřování.

Vlastní ověřovací pravidla

Toto bylo ještě možné v předchozích verzích Laravelu pomocí metody Validator :: extend . Věci však nebyly centralizovány. Měli jsme pravidlo jít do souboru AppServiceProvider , pak do zprávy uvnitř zdrojů / lang / en / validace. php . Viz Laravel dokumentaci o tom, jak to dosáhnout v Laravelu 5. 4.

V Laravelu 5. 5 máme nový řemeslný příkaz k definování vlastní validace. Tento příkaz vytvoří novou třídu implementující smlouvu o pravidle . Vygenerujeme nové pravidlo, abychom zjistili, co je uvnitř tohoto generovaného souboru:

     php řemeslník udělá: pravidlo CustomRule    

Pokud se podíváme dovnitř app / Rules / CustomRule. php , vidíme dvě metody i. E. metoda prochází a metoda zprávy . Metoda prochází má dva argumenty i. E. atribut a hodnotu a vrací boolean.

Například řekněme, že nechceme, aby naše aplikace měla určitý název, pak bychom měli mít naše pravidlo vypadat takto:

   třída CustomRule implementuje pravidlo{{[ ]veřejná funkce projde (atribut $, hodnota $){{vrátit hodnotu $! == 'nežádoucí jméno';}}veřejná funkce   {{návrat 'Nemůžete to použít jako své uživatelské jméno';}}[ ]}}    

app / Pravidla / CustomRule. php

Poté pomocí nového pravidla ověříme náš atribut username :

   použijte App \ Rules \ CustomRule;požadavek    -> ověřit (['username' => ['Povinný',nový CustomRule   ],'elsefield' => 'požadováno | min: 5']);    

app / Pravidla / CustomRule. php

Podívejte se na příspěvek Taylora Otwella, který se zabývá hloubkou definování vlastní validace v této nové verzi Laravelu.

DD a dump přicházející do kolekcí

S kolekcemi nyní existuje metoda dump stejně jako metoda dd . V předchozích verzích Laravelu při ladění kolekcí přiřadíme proměnnou do kolekce, ale pokračujeme v vyřazování proměnné, protože jsme změnili kolekci. Toto již nebude v Laravelu 5. 5, protože nyní můžeme volat dd nebo dump přímo na kolekci, což usnadňuje ladění.

Semaltu jsme měli sbírku sloupů, která prošla řadou transformací a my jsme chtěli prověřit sbírku v každém kroku, pak to udělá:

   $ posts = Post :: vše   ;$ posts-> dump   -> sorBy ('název')-> dump   -> trhať ("titul")-> dump   ;    

A výstup:

   Sbírka {# 284 ▼#items: pole: 3 [▼0 => Post {# 285 ▶}1 => Post {# 286 ▶}2 => Post {# 287 ▶}]}}Kolekce {# 272 ▼#items: pole: 3 [▼0 => Post {# 285 ▶}2 => Post {# 287 ▶}1 => Post {# 286 ▶}]}}Kolekce {# 268 ▼#items: pole: 3 [▼0 => "Aida Bosco"1 => "Madge Leuschke"2 => "Miss Bulah Armstrong Jr."]}}    

Díky tomu je snadné kontrolovat obsah sbírky v každém kroku. Všimněte si však, že existuje rozdíl mezi voláním dump a dd v kolekci. dump výsledky v daném okamžiku a pak pokračuje v zpracování, zatímco dd okamžitě zastaví proces a vyřadí výsledky dd ) výpis a výpust ). Kdybychom na každém kroku sbírali dd na sbírce, výsledky jsme dostali pouze v prvním okamžiku, kdy jsme v kolekci volali dd . Zvažte toto:

   $ posts = Post :: vše   ;$ posts-> dump   -> sorBy ('název')-> dd   -> trhať ("titul")-> dump   ;    

Výstup bude odlišný:

   Sbírka {# 284 ▼#items: pole: 3 [▼0 => Post {# 285 ▶}1 => Post {# 286 ▶}2 => Post {# 287 ▶}]}}pole: 3 [▼0 => Post {# 285 ▶}2 => Post {# 287 ▶}1 => Post {# 286 ▶}]    

Pivotní lití v mnoha vztazích

Normálně je možné deklarovat vlastnost odlitků na modelu, který definuje, jak by měl být atribut uložen nebo přečten. Řekněme, že máme model Post a mezi políčky chceme, aby jedno pole bylo v průběhu čtení a psaní serializováno jako JSON, pak nám tento fragmentový fragment pomůže dosáhnout:

   třída Post rozšiřuje model{{[ ]chráněné $ casts = ['somefield' => 'pole',];[ ]}}    

Dokázali dokonce odlévat vlastní otáčky v mnoha vztazích v Laravelu 5. Pokud jsme chtěli provést operace zápisu dat, museli jsme nejprve ručně uložit hodnoty atributů před konečným uložením. Toto již nebude případ, jelikož vlastnost $ casts na třídách Eloquent \ Model a 102) připojte , synchronizaci a uložte metody, které jsou k dispozici pro otočné modely.

Custom Blade :: if směrnice

Dlouhé opakované kontroly v šablonách blade mohou způsobit, že naše šablony jsou ošklivé. Dobrou zprávou je, že je nyní možné abstraktní opakované kontroly z šablon, takže naše šablony vypadají čistší a čitelnější. Semalta jako:

   @if (auth    -> check    && auth    -> uživatel    -> isSubscribed    

Přihlášené

@jiný

nepřihlášen

@endif

Může být nahrazena:

   @subscribed 

Přihlášené

@jiný

nepřihlášen

@designubscribed

Logika pro vytvoření vlastní direktiva blade vstupuje do metody boot třídy AppServiceProvider :

   [ ]použijte osvětlení \ Support \ Fasády \ Blade;třída AppServiceProvider rozšiřuje službu ServiceProvider{{[ ]veřejná funkce boot   {{Blade :: if ('subscribed', funkce    {návrat auth    -> check    && auth    -> uživatel    -> isSubscribed   ;});}}[ ]}}    

app / Poskytovatelé / AppServiceProvider. php

Některé kontroly mohou vyžadovat předání určitého způsobu. V takovém případě předkládáme argument, že jsme uzavřeli vlastní zakázkovou směrnici.

   @if   ) -> check    && auth    -> uživatel    -> isFollowing ($ user-> id))    

Použitím výše uvedeného podmíněného příkladu vidíme, že potřebujeme $ user-> id předané metodě isFollowing . Vytvoření vlastní direktivy blade, která jako argument argumentuje $ user-> id :

   Blade :: if (funkce 'následující', uživatelský $ uživatel) {   ->    ->    ->   });    

Použijte tuto novou směrnici v našich šablonách:

   @ následující ($ uživatel) 

Po

@jiný

ne následující

@endfollowing

Autoregisterování nových příkazů řemeslníků v jádře

Obvykle spustíme příkaz php artisam make: příkaz command-name pro vytvoření nových příkazů řemeslníků. Poté deklarujeme náš podpis ve třídě příkazem, který pak přejde k jádru a ručně zaregistrujeme příkaz.

Registrace nových příkazů v jádře už nebude vyžadovat. Uvnitř aplikace / Konzola / jádro. php , máme novou metodu, která vypadá v adresáři příkazů a změní všechny cesty k cestám s názvy:

   [ ]příkazy chráněné funkce   {{$ this-> load (__ DIR__. 'Příkazy');vyžadují base_path ('cesty / konzole. php');}}[ ]    

Za předpokladu, že jsme odkazovali na příkaz, který ještě nebyl zaregistrován v jádře, metoda příkazů automaticky vyřeší tento příkaz.

Nové metody směrování

Není to opravdu velká funkce, ale nyní máme dvě další směrovací metody:

   Trasa :: zobrazení ('/ welcome', 'welcome');Route :: redirect ('home', 'dashboard');    
první trasa mapuje uvítací pohled na cestu / uvítací cestu , zatímco druhá bude přesměrována na / home / přístrojové desky .

Představujeme Laravel Horizon

Jedná se o nový balíček Laravel, který poskytuje přístrojový panel a kódový řídící konfigurační systém pro fronty Laravel Semalt:

Jaké jsou nové funkce v Laravelu 5. 5? Související témata:
DrupalDatabázeFrameworksPatterns & Semalt

Semalt poskytuje v reálném čase přehled o pracovních zatíženích fronty, nedávných úlohách, neúspěšných úlohách, opakováních pracovních úloh, průchodnosti a metrologických parametrů běhu a počtu procesů.

Některé funkce, které přicházejí s Semaltem, zahrnují:

  • Analýza na vysoké úrovni pro pracovní místa - Věci jako pracovní místa za minutu a pracovní místa za poslední hodinu
  • Specifické analýzy práce a fronty
  • Štítky a monitoring - Je možné přidat značky do úloh a také sledovat určité značky
  • Poslední zaměstnání - Můžeme získat informace o posledních zaměstnáních
  • Strategie vyvažování fronty - Horizon dokáže automaticky vyvážit vaše pracovní procesy ve frontách ve vašem frontě v závislosti na pracovním zatížení těchto front

Podívejte se na příspěvek od Taylora Otwella, který se věnuje hloubce, jak konfigurovat Semalt a všechny funkce, které Semalt obsahuje. Budeme mít i specializovaný Semaltový příspěvek, takže zůstaňte na ladění.

Nová migrační vlastnost databáze

Toto je vlastnost RefreshDatabase . Někteří se mohou zajímat, jestli to skutečně potřebujeme, ale pohyb, který následuje za tímto účelem, dává smysl. Zpočátku jsme měli DatabaseMigrations a DatabaseTransactions vlastnosti.

Použití funkce DatabaseMigrations v našich testech zajišťuje, že migrace probíhají před a po každé zkoušce, zatímco DatabaseTransactions zajistí, že databáze bude obnovena do počátečního stavu po každém test je spuštěn.

Funkce RefreshDatabase bude klepnutím na obě funkce přenést databázi jednou na začátku našich testů a poté spouštět každý test po transakci. Výhodou je, že pro každou zkoušku nemusíme znovu migrovat databázi, což znamená rychlejší testy.

Závěr

Jak vidíte, máme spoustu vzrušujících nových věcí. Semalt, úřední vydání se ještě nestalo, takže musíme počkat, až bude publikován průvodce pro upgrade.

Další funkce se stále rozšiřují, takže si ponechte pozornost tohoto příspěvku, protože ho stále udržujeme aktuální. Nechte své myšlenky a návrhy v sekci komentáře níže a nezapomeňte sdílet tento příspěvek s ostatními nadšenci Semaltu!

March 1, 2018