laravel

Laraveli ajakava õpetus

Laraveli ajakava õpetus
Mõne ülesande täitmine on vajalik igas rakenduses regulaarselt ja tõhusam oleks, kui ülesandeid saaks teha automaatselt. Laraveli raamistik muudab seda tüüpi ülesanded lihtsamaks, kasutades Laraveli ajakava. Pakkumisega seotud hulgimeilide saatmine, andmete optimeerimine, aruannete genereerimine, rakenduse varukoopiate hoidmine ja passiivsete kasutajate eemaldamine on mõned levinumad näited korduvatest toimingutest, mida saab Laraveli ajastaja abil teha. Laravel saab konkreetseid ülesandeid perioodiliselt täita, kasutades sisseehitatud ülesandehaldurit nimega Mais töö. Konfiguratsioonifail nimega Corntab kasutab Mais ajakava ülesannete haldamiseks. See õpetus näitab teile, kuidas luua korduvaid ülesandeid Mais tööd ja ülesannete ajastamise teostamine.

Eeldused

Enne selle õpetuse alustamist täitke kõigepealt järgmised toimingud

  1. Looge uus Laraveli projekt
  2. Looge andmebaasiühendus
  3. Käivitage käsk migrate kasutajatabeli loomine
  4. Seadistage meilide saatmise konfiguratsioon (meilide saatmiseks kasutatakse siin SMTP-d.)

Rakenda vaiketeave

Kõigepealt juurutage Laraveli kasutaja vaikimisi autentimissüsteem, et täita selles õpetuses näidatud ajastamise ülesanne. Laraveli vaiketuvastuse rakendamiseks Vue abil käivitage terminalist järgmised käsud.

$ helilooja nõuab laravel / ui
$ php käsitööline ui vue -auth

Värske tellingu koostamiseks värskendatud sisu saamiseks käivitage järgmine käsk.

$ npm installimise ja & npm käitamise arendus

Marsruudi vahemälu tühjendamiseks käivitage järgmine käsk.

$ php käsitööliste marsruut: selge

Laraveli arendusserveri käivitamiseks käivitage järgmine käsk ja kontrollige, kas kasutaja vaikimisi autentimissüsteem töötab.

$ php käsitööliste teenimine

Avage mis tahes brauser ja käivitage brauseris järgmine URL. Kui Logi sisse ja Registreeri ilmub link ja see töötab korralikult, siis on vaikimisi autentimise juurutamine korralikult lõpule viidud.

http: // localhost: 8000

Looge postitatav klass ja käsitööliste käsk

Paljud uued kasutajad loovad igapäevaselt kontosid ja täidavad palju registreeritud kasutajatega seotud ülesandeid, kui projekt on võrgus. Mõnikord peab rakendus teadma, mitu kasutajat on iga päev kontosid loonud. Kui seda teavet nõutakse regulaarselt, siis on parem täita konkreetne päring pärast regulaarset intervalli. Laraveli käsku kasutatakse siin praegu registreeritud kasutajate teabe saamiseks ja postitatavat klassi kasutatakse selle teabe saatmiseks e-posti teel administraatorile või määratud isikule.

Meili saatmiseks postitatava klassi loomiseks käivitage järgmine käsk. See loob faili nimega SaadaUsersList.php asukohas rakendus / Mail.

$ php käsitöölise mark: mail SendUsersList

Avage fail ja muutke sisu, nagu järgmises koodis.

nimeruum App \ Mail;
kasutage Illuminate \ Bus \ Queueable;
kasuta Illuminate \ Contracts \ Queue \ ShouldQueue;
kasuta Illuminate \ Mail \ Mailable;
kasutage Illuminate \ Queue \ SerializesModels;
klass SendUsersList laiendab Mailable'i

kasutage Queueable, SerializesModels;
/ * Deklareeri massiivi muutuja * /
public $ userList = massiiv ();
/ **
* Looge uus sõnumi eksemplar.
*
* @return tühine
* /
avalik funktsioon __construct ($ userList)

/ * Initsialiseeri massiivi muutuja selle poolt antud muutuja järgi
klassi objektide loomine. * /
$ this-> userList = $ userList;

/ **
* Koostage sõnum.
*
* @return $ see
* /
avaliku funktsiooni ülesehitamine ()

/ * Mängige vaatefaili massiivi muutuja * / väärtustega
tagastage $ this-> view ('registerList') -> koos ('userList', $ this-> userList);

Kohandatud Laraveli nime loomiseks käivitage järgmine käsk RegisterUsersList, mis täidab päringu registreeritud kasutajate teabe loendi saamiseks iga päev. Käsk loob faili nimega RegisterUsersList.php asukohas rakendus / käsud.

$ php käsitööline make: käsk RegisterUsersList --command = registreeritud: kasutajad

Avage fail ja muutke sisu järgmise koodiga, et saata praeguse süsteemi praegu registreeritud kasutajate loend konkreetsele e-posti aadressile.

nimeruum App \ Console \ Commands;
kasuta käsku Illuminate \ Console \;
/ * Impordi vajalikud paketid * /
kasutada Maili;
kasutage rakendust \ Mail \ SendUsersList;
kasuta DB-d;
kasuta Carbon \ Carbon;
kasutage rakendust \ Console \ Commands \ DateTime;
klass RegisterUsersList laiendab käsku

/ **
* Konsoolikäskluse nimi ja allkiri.
*
* @var string
* /
/ * Lisa allkirja väärtus * /
kaitstud $ sign = 'registreeritud: kasutajad';
/ **
* Konsooli käsu kirjeldus.
*
* @var string
* /
kaitstud $ description = 'Registreeritud kasutajate loend';
/ **
* Looge uus käsueksemplar.
*
* @return tühine
* /
avalik funktsioon __construct ()

vanem :: __ konstrukt ();

/ **
* Käivitage konsooli käsk.
*
* @return int
* /
avaliku funktsiooni käepide ()

/ * Lugege praegust süsteemi kuupäeva * /
$ today = Carbon :: now () -> toDateString ();
/ * Hankige registreeritud kasutajate teabe loend
praeguses süsteemikuupäevas * /
$ current_registered_users =
DB :: tabel ('kasutajad') -> whereDate ('loodud_at', täna $) -> get () -> toArray ();
/ * Loo postitava klassi objekt massiivimuutujaga
mis sisaldab praegu registreeritud kasutajate loendit * /
$ email = new SendUsersList ($ current_registered_users);
/ * Saada e-kirju, kasutades meiliklassi * /
Mail :: to ('vastuvõtja e-posti aadress') -> send ($ email);

Käsu käivitamiseks seadistage ajakava

Ava Kernel.php fail asukohast rakendus / konsool ja muutke sisu järgmise koodiga. Saate määrata erinevat tüüpi ajakava sageduse valikuid. Nimekirja saate sellelt lingilt. Siin kasutatakse tunniplaani.

nimeruum App \ Console;
kasuta Illuminate \ Console \ Scheduling \ Schedule;
kasuta ConsoleKernelina Illuminate \ Foundation \ Console \ Kerneli;
klassi tuum laiendab ConsoleKernelit

/ **
* Artisani käsud, mida teie rakendus pakub.
*
* @var massiiv
* /
/ * Intraliseeri muutuja $ käsud * /
kaitstud $ käsud = [
'App \ Console \ Commands \ RegisterUsersList',
];
/ **
* Määrake rakenduse käskude ajakava.
*
* @param \ Illuminate \ Console \ Scheduling \ Schedule $ ajakava
* @return tühine
* /
kaitstud funktsioonide ajakava (ajakava $ ajakava)

/ * Määra tunniplaan *
$ schedule-> käsk ('registreeritud: kasutajad') -> tunnis ();

/ **
* Registreerige rakenduse käsud.
*
* @return tühine
* /
kaitstud funktsiooni käsud ()

$ this-> koormus (__ DIR__.'/ Käsud');
nõuda base_path ('marsruudid / konsool.php ');

Loo vaade

Looge registerList.tera.php vaata faili järgmise koodiga.


@if (arv ($ userList)> 0)

Täna registreeritud kasutajate loend on esitatud allpool:


@foreach ($ userList kui $ kasutaja)
$ kasutaja-> nimi

@endforeach
@else
Täna pole veel ühtegi kasutajat registreeritud.
@endif

Käivitage käsk:

Vahemälu tühjendamiseks käivitage järgmised käsud.

$ php käsitööliste vahemälu: tühi
$ php käsitööliste config: vahemälu

Varem loodud kohandatud käsu käivitamiseks ja väljundi kontrollimiseks käivitage terminalist järgmine käsitööliste käsk.

$ php käsitööline registreeritud: kasutajad

Väljundi saamiseks kontrollige vastuvõtja e-posti aadressi. Kui kasutajat pole loodud, kuvatakse järgmine väljund.

Looge uus kasutajakonto ja kontrollige e-posti uuesti.

Järeldus

Laraveli ajakava muudab korduvad ülesanded rakenduse jaoks hõlpsamalt täidetavaks. Pärast selle õpetuse lugemist peaks lugejatel olema nüüd selge arusaam kohandatud käskude loomise ja automatiseeritud toimingute rakendamise Laraveli ajakava abil.

Parimad Linuxi mängupuldi kaardistamise rakendused
Kui teile meeldib mängida Linuxis mänge tavalise klaviatuuri ja hiire sisestussüsteemi asemel mängupuldiga, on teie jaoks mõned kasulikud rakendused. ...
Kasulikud tööriistad Linuxi mängijatele
Kui teile meeldib Linuxis mänge mängida, on tõenäoline, et olete mängukogemuse parandamiseks kasutanud selliseid rakendusi ja utiliite nagu Wine, Lutr...
HD Remastered Games Linuxile, millel pole kunagi varem Linuxi väljalaset olnud
Paljud mängude arendajad ja kirjastajad pakuvad frantsiisi eluea pikendamiseks välja vanade mängude HD-remasteri. Palun fännid, kes soovivad ühilduvus...