Tefito

Laravel: He aha nga Kaiwhakahaere Laravel

I roto i te anga MVC, ko te reta "C" e tu ana mo nga Kaiwhakahaere, a i roto i tenei tuhinga ka kite tatou me pehea te whakamahi i nga Kaiwhakahaere i Laravel. Ka noho tika i waenga i nga tirohanga me nga tauira. I roto i tenei tuhinga ka kite tatou me pehea te hanga me te whakarite i nga kaiwhakahaere i Laravel.

Creare un controller i roto i te laravel

Hei hanga a controller, me whakatuwhera e matou te whakahau whakahau, te tauranga ranei, kia rite ki te punaha whakahaere e whakamahia ana e matou, ka patohia te whakahau e whai ake nei hei hanga i te kaiwhakahaere ma te whakamahi Artisan CLI (Command Line Interface).

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

Whakakapi <controller-name> me to ingoa controller. Ma tenei ka hanga he controller. Ko te controller ka taea te tiro ki roto app/Http/Controllers .

Ka kite koe kua oti kee te mahi mo koe etahi o nga tohu ka taea e koe te taapiri i a koe ake tohu tohu. Ko te controller ka taea te karanga mai i te web.php me te syntax e whai ake nei.

wetereo
Route::get(‘base URI’,’controller@method’);
tauira

1 : Whakahaerehia te whakahau e whai ake nei hei waihanga MyController

php artisan make:controller MyController

2 – I muri i te mahi angitu, ka whiwhi koe i te putanga e whai ake nei.

3 – Ka kitea e matou te kaiwhakahaere i hangaia i roto app/Http/Controller/MyController.php me etahi waehere taketake kua tuhia, ka taea e taatau te whakarereke ina hiahiatia.

Pūwhakahaere waenga

Kua kite tatou i te middleware a ka taea hoki e tatou te whakamahi me te controller. Ko te middleware ka taea hoki te tautapa ki te ara kaiwhakahaere, ki roto ranei i te kaihanga kaiwhakahaere. Ka taea e koe te whakamahi i te tikanga middleware to assign the middleware al controller. Ko te middleware ka taea hoki te rehita ki etahi tikanga o te controller.

Tautapa i te middleware ki te ara
Route::get('profile', [
   'middleware' => 'auth',
   'uses' => 'UserController@showProfile'
]);

I konei kei te tautapahia e matou te taputapu waenga motuhēhēnga ki te KaiwhakamahiKaiwhakahaere i te ara kōtaha.

Taumahi Middleware i roto i te kaihanga kaiwhakahaere
<?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');
   }
}

I konei ka tohua e matou te middleware o motuhēhēnga te whakamahi i te tikanga middleware i roto i te kaihanga MyController .

Kia mahara $this->middleware() mahi te reira takitahi ki te tautapa koe i roto i te kaihanga. Mena ka waea tatou $this->middleware() mai i tetahi tikanga whakahaere motuhake, kare e maka he hapa engari karekau te middleware e mahi.

He tika tenei whiringa, engari fakatāutaha pai ake ahau ki te hoatu i te middleware katoa i roto i te routes, no te mea he maamaa ake te waahi ki te rapu mo nga mea katoa middleware.

tauira

1 – Me taapiri nga rarangi waehere e whai ake nei ki te konae route/web.php a ka whakaora matou.

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

2 – Me hanga he middleware ingoa FirstMiddleware ma te whakahaere i te rarangi waehere e whai ake nei.

php artisan make:middleware FirstMiddleware

3 : tāpirihia te waehere e whai ake nei i roto i te tikanga hapai Tuhinga o mua FirstMiddleware hanga noa i roto taupānga/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 – Me hanga he middleware ingoa SecondMiddleware ma te whakahaere i te whakahau e whai ake nei.

php artisan make:middleware SecondMiddleware

5 : me tapiri te waehere e whai ake nei i roto i te tikanga kakau o te SecondMiddleware hanga noa i roto taupānga/Http/Middleware .

Panui houtanga
Kaua e ngaro nga korero tino nui mo te mahi auaha. Waitohu ki te whiwhi i a raatau ma te imeera.
<?php

namespace App\Http\Middleware;
use Closure;

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

6 : me hanga he controller ingoa MyController ma te whakahaere i te rarangi e whai ake nei.

php artisan make:controller MyController

7 - I muri i te mahi angitu o te URL, ka whiwhi koe i nga putanga e whai ake nei -

8 – Tāruahia te waehere e whai ake nei ki te konae 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 – Inaianei me timata te tūmau tukutuku php ā-roto mā te whakahaere i te whakahau e whai ake nei, mena kare ano koe.

php artisan serve

10 – Tirohia te URL e whai ake nei.

http://localhost:8000/mycontroller/path

11 – Ko te putanga ka puta mai i te ahua e whai ake nei.

Tata ki nga taputapu waenga e rua ka uru, engari kotahi anake

Controller di restful resource

I te nuinga o nga wa ka hangaia he tono me mahi koe CRUD (Create, Read, Update, Delete)Ma Laravel e ngawari tenei mahi. Hanga noa he controller a ka tukuna aunoatia e Laravel nga tikanga katoa mo nga mahi CRUD. Ka taea hoki te tuhi i tetahi ara ki nga tikanga katoa i roto i te konae route.php.

tauira

1 : hanga he kaiwhakahaere e kiia nei MyController ma te whakahaere i te whakahau e whai ake nei.

php artisan make:controller MyController

2 : tāpirihia te waehere e whai ake nei 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 – Me taapiri te rarangi waehere e whai ake nei ki te konae routes/web.php .

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

4 – Kei te rehita matou i nga tikanga katoa o MyController ma te rehita i tetahi kaiwhakahaere whai rauemi. Kei raro ko te ripanga o nga mahi e whakahaerehia ana e te kaiwhakahaere rauemi.

PoakaAraMahiIngoa Ara
GET/ takutaupūtaku taurangi
GET/taku/hangawaihangataku.hanga
POST/ takutoataku toa
GET/taku/{taku}whakaatutaku.whakaatu
GET/my/{my}/editwhakatikataku.whakatika
PUT/PATCH/taku/{taku}whakahoutaku.whakahou
DELETE/taku/{taku}whakangarotoku. whakangaro

5 – Ngana ki te whakahaere i nga URL e whakaatuhia ana i te ripanga i raro nei.

URLDescrizioneAtu
http://localhost:8000/myWhakahaerehia te tikanga taurangi o MyController.phptaupū
http://localhost:8000/my/createWhakahaerehia te tikanga hanga o MyController.phpte whakauru
http://localhost:8000/my/1Whakahaerehia te tikanga whakaatu o MyController.phpwhakaatu
http://localhost:8000/my/1/editWhakahaerehia te tikanga whakatika o MyController.phpwhakatika

Ercole Palmeri

Panui houtanga
Kaua e ngaro nga korero tino nui mo te mahi auaha. Waitohu ki te whiwhi i a raatau ma te imeera.

Nga tuhinga o mua

Me pehea te whakarite pai i nga raraunga me nga tauira ki Excel, mo te tātaritanga pai

Ko Microsoft Excel te taputapu tohutoro mo te tātari raraunga, na te mea he maha nga waahanga mo te whakarite huinga raraunga,…

14 May 2024

He whakatau pai mo nga kaupapa nui e rua Walliance Equity Crowdfunding: Jesolo Wave Island me Milano Via Ravenna

Ko Walliance, SIM me te papaahi i waenga i nga kaiarahi i Uropi i roto i te mara o te Real Estate Crowdfunding mai i te tau 2017, e kii ana te otinga ...

13 May 2024

He aha te Filament me pehea te whakamahi i te Filament Laravel

Ko te Filament he anga whanaketanga Laravel "whakatere", e whakarato ana i etahi waahanga-tapae katoa. I hangaia hei whakangwari i te tukanga o te…

13 May 2024

I raro i te mana o Artificial Intelligences

«Me hoki ahau ki te whakaoti i taku kukuwhatanga: Ka mahi ahau i roto i te rorohiko ka puta he kaha parakore. Ka noho ki…

10 May 2024

Ka taea e te mohiotanga hou a Google te whakatauira i te DNA, te RNA me "nga ngota ngota o te ora"

Kei te whakauru a Google DeepMind i tetahi putanga pai ake o tana tauira mohio. Ko te tauira hou kua whakapai ake ehara i te mea anake…

9 May 2024

Te tirotiro i te Hanganga Tauira a Laravel

Ko Laravel, he mea rongonui mo tana wetereo huatau me ona ahuatanga kaha, ka whakarato hoki i te turanga pakari mo te hoahoanga tauira. I reira…

9 May 2024

Cisco Hypershield me te hoko o Splunk Ka timata te wa hou o te haumarutanga

Kei te awhina a Cisco me Splunk i nga kaihoko ki te whakatere i o raatau haerenga ki te Pokapū Whakahaere Haumaru (SOC) a meake nei me te…

8 May 2024

I tua atu i te taha ohaoha: ko te utu kore kitea o te ransomware

Ko Ransomware te rangatira o nga purongo mo nga tau e rua kua hipa. Ko te nuinga o nga tangata kei te tino mohio ko nga whakaeke ...

6 May 2024