Ìwé

Laravel: Kini awọn oludari laravel

Nel framework MVC, la lettera “C” sta per Controllers, e il questo articolo vedremo come usare i Controller in Laravel. Agisce come un traffico diretto tra viste e modelli. In questo articolo vediamo come creare e impostare i controller in Laravel.

Creare un controller in laravel

Per creare un controller, dobbiamo aprire il prompt dei comandi o il terminale, in base al sistema operativo che stiamo utilizzando, e digitiamo il seguente comando per creare il controller utilizzando Artisan CLI (Command Line Interface).

php artisan make:controller <controller-name> --plain

Sostituisci <controller-name> con il nome del tuo controller. Questo creerà un controller. Awọn controller creato può essere visualizzato in app/Http/Controllers .

Vedrai che è già stata eseguita una codifica di base per te e puoi aggiungere la tua codifica personalizzata. Il controller creato può essere chiamato da web.php con la seguente sintassi.

sintasi
Route::get(‘base URI’,’controller@method’);
apẹẹrẹ

1 : eseguire il seguente comando per creare MyController

php artisan make:controller MyController

2 – Dopo l’esecuzione riuscita, riceverai il seguente output.

3 – Troveremo il controller creato in app/Http/Controller/MyController.php con del codice di base già scritto e possiamo fare modifiche in base alle necessità.

Middleware del Controller

Abbiamo già visto il middleware e possiamo utilizzarlo anche con il controller. Awọn middleware può anche essere assegnato alla route del controller o all’interno del costruttore del controller. È possibile utilizzare il metodo middleware per assegnare il middleware al controller. Awọn middleware registrato può anche essere limitato a determinati metodi del controller.

Assegnazione del middleware alla route
Route::get('profile', [
   'middleware' => 'auth',
   'uses' => 'UserController@showProfile'
]);

Qui stiamo assegnando il middleware di autenticazione a UserController nel percorso del profilo.

Assegnazione del middleware all’interno del costruttore del controller
<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;

class MyController extends Controller {
   public function __construct() {
      $this->middleware('auth');
   }
}

Qui stiamo assegnando il middleware di autenticazione utilizzando il metodo middleware nel costruttore MyController .

Si noti che $this->middleware() o ṣiṣẹ adashe se lo si assegna nel costruttore. Se chiamiamo $this->middleware() da un metodo controller specifico, non genererà alcun errore ma il middleware non funzionerà effettivamente.

Questa opzione è valida, ma tikalararẹ preferisco inserire tutti i middleware nelle routes, perché è più chiaro dove cercare tutti i middleware.

apẹẹrẹ

1 – Aggiungiamo le seguenti righe di codice al file awọn ọna/web.php e salviamo.

<?php
Route::get('/mycontroller/path',[
   'middleware' => 'First',
   'uses' => 'MyController@showPath'
]);

2 – Creiamo un middleware ti a npe ni FirstMiddleware eseguendo la seguente riga di codice.

php artisan make:middleware FirstMiddleware

3 : aggiungere il seguente codice nel metodo mu del FirstMiddleware appena creato in app/Http/Middleware .

<?php

namespace App\Http\Middleware;
use Closure;

class FirstMiddleware {
   public function handle($request, Closure $next) {
      echo '<br>First Middleware';
      return $next($request);
   }
}

4 – Creiamo un middleware ti a npe ni SecondMiddleware eseguendo il seguente comando.

php artisan make:middleware SecondMiddleware

5 : aggiungiamo il seguente codice nel metodo handle del SecondMiddleware appena creato in app/Http/Middleware .

Iwe iroyin Innovation
Maṣe padanu awọn iroyin pataki julọ lori isọdọtun. Forukọsilẹ lati gba wọn nipasẹ imeeli.
<?php

namespace App\Http\Middleware;
use Closure;

class SecondMiddleware {
   public function handle($request, Closure $next) {
      echo '<br>Second Middleware';
      return $next($request);
   }
}

6 : creiamo un controller ti a npe ni MyController eseguendo la seguente riga.

php artisan make:controller MyController

7 – Dopo l’esecuzione corretta dell’URL, riceverai il seguente output –

8 – Copia il seguente codice nel file app/Http/MyController.php.

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;

class MyController extends Controller {
   public function __construct() {
      $this->middleware('Second');
   }
   public function showPath(Request $request) {
      $uri = $request->path();
      echo '<br>URI: '.$uri;
      
      $url = $request->url();
      echo '<br>';
      
      echo 'URL: '.$url;
      $method = $request->method();
      echo '<br>';
      
      echo 'Method: '.$method;
   }
}

9 – Ora avviamo il server Web interno di php eseguendo il seguente comando, se non lo hai ancora eseguito.

php artisan serve

10 – Visita il seguente URL.

http://localhost:8000/mycontroller/path

11 – L’output apparirà come mostrato nell’immagine seguente.

Praticamente entrambi i middleware intervengono, ma solo uno

Controller di restful resource

Spesso durante la creazione di un’applicazione è necessario eseguire operazioni CRUD (Create, Read, Update, Delete)Laravel semplifica questo lavoro. Basta creare un controller e Laravel fornirà automaticamente tutti i metodi per le operazioni CRUD. Possiamo anche registrare un singolo percorso per tutti i metodi nel file route.php.

apẹẹrẹ

1 : creare un controller chiamato MyController eseguendo il seguente comando.

php artisan make:controller MyController

2 : aggiungere il seguente codice in app/Http/Controllers/MyController.php

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;

class MyController extends Controller {
   public function index() {
      echo 'index';
   }
   public function create() {
      echo 'create';
   }
   public function store(Request $request) {
      echo 'store';
   }
   public function show($id) {
      echo 'show';
   }
   public function edit($id) {
      echo 'edit';
   }
   public function update(Request $request, $id) {
      echo 'update';
   }
   public function destroy($id) {
      echo 'destroy';
   }
}

3 – Aggiungiamo la seguente riga di codice nel file routes/web.php .

Route::resource('my','MyController');

4 – Ora stiamo registrando tutti i metodi di MyController registrando un controller con resource. Di seguito è riportata la tabella delle azioni gestite dal controller delle risorse.

VerbonaActionOrukọ ọna
gba/ miÌwémy.index
gba/my/createṣẹdamy.create
post/ miitajamy.store
gba/my/{my}showmy.show
gba/my/{my}/editeditmy.edit
PUT/PATCH/my/{my}imudojuiwọnmy.update
pa/my/{my}runmy.destroy

5 – Prova a eseguire gli URL mostrati nella tabella seguente.

URLDescrizioneJade
http://localhost:8000/myEsegue il metodo index di MyController.phpÌwé
http://localhost:8000/my/createEsegue il metodo create di MyController.phpṣẹda
http://localhost:8000/my/1Esegue il metodo show di MyController.phpshow
http://localhost:8000/my/1/editEsegue il metodo edit di MyController.phpedit

Ercole Palmeri

Iwe iroyin Innovation
Maṣe padanu awọn iroyin pataki julọ lori isọdọtun. Forukọsilẹ lati gba wọn nipasẹ imeeli.

Awọn iwe ti o ṣẹṣẹ

Bii o ṣe le ṣeto data ti o dara julọ ati awọn agbekalẹ ni Excel, fun itupalẹ ti o ṣe daradara

Microsoft Excel jẹ irinṣẹ itọkasi fun itupalẹ data, nitori pe o funni ni ọpọlọpọ awọn ẹya fun siseto awọn eto data,…

14 May 2024

Ipari ti o dara fun awọn iṣẹ akanṣe pataki meji Walliance Equity Crowdfunding: Jesolo Wave Island ati Milano Nipasẹ Ravenna

Walliance, SIM ati Syeed laarin awọn oludari ni Yuroopu ni aaye ti Ohun-ini gidi Crowdfunding lati ọdun 2017, n kede ipari…

13 May 2024

Kini Filament ati bii o ṣe le lo Laravel Filament

Filament jẹ ilana idagbasoke Laravel “isakiakia”, n pese ọpọlọpọ awọn paati akopọ ni kikun. O jẹ apẹrẹ lati ṣe irọrun ilana ti…

13 May 2024

Labẹ iṣakoso ti Artificial Intelligences

“Mo gbọdọ pada lati pari itankalẹ mi: Emi yoo ṣe akanṣe ara mi ninu kọnputa ati di agbara mimọ. Ni kete ti gbe ni…

10 May 2024

Oye itetisi atọwọda Google tuntun le ṣe awoṣe DNA, RNA ati “gbogbo awọn ohun elo ti igbesi aye”

Google DeepMind n ṣafihan ẹya ilọsiwaju ti awoṣe itetisi atọwọda rẹ. Awoṣe ilọsiwaju tuntun pese kii ṣe…

9 May 2024

Ṣiṣawari Itumọ Apọju Laravel

Laravel, olokiki fun sintasi didara rẹ ati awọn ẹya ti o lagbara, tun pese ipilẹ to lagbara fun faaji apọjuwọn. Nibẹ…

9 May 2024

Cisco Hypershield ati akomora ti Splunk Awọn titun akoko ti aabo bẹrẹ

Sisiko ati Splunk n ṣe iranlọwọ fun awọn alabara lati yara irin-ajo wọn si Ile-iṣẹ Awọn iṣẹ Aabo (SOC) ti ọjọ iwaju pẹlu…

8 May 2024

Ni ikọja ẹgbẹ ọrọ-aje: idiyele ailopin ti ransomware

Ransomware ti jẹ gaba lori awọn iroyin fun ọdun meji sẹhin. Pupọ eniyan mọ daradara pe ikọlu…

6 May 2024