Creare un controller
ლარაველშიშესაქმნელად ა controller
, ჩვენ უნდა გავხსნათ ბრძანების სტრიქონი ან ტერმინალი, ოპერაციული სისტემის მიხედვით, რომელსაც ვიყენებთ და აკრიფოთ შემდეგი ბრძანება კონტროლერის გამოყენებით Artisan CLI (Command Line Interface).
php artisan make:controller <controller-name> --plain
ჩანაცვლება <controller-name>
შენი სახელით controller
. ეს შექმნის ა controller
. The controller
შექმნილი შეგიძლიათ ნახოთ app/Http/Controllers
.
თქვენ ნახავთ, რომ რამდენიმე ძირითადი კოდირება უკვე გაკეთდა თქვენთვის და შეგიძლიათ დაამატოთ თქვენი პირადი კოდირება. The controller
შექმნილი შეიძლება გამოიძახოთ web.php-დან შემდეგი სინტაქსით.
Route::get(‘base URI’,’controller@method’);
1 : შექმენით შემდეგი ბრძანება MyController
php artisan make:controller MyController
2 – წარმატებული შესრულების შემდეგ მიიღებთ შემდეგ გამომავალს.
3 – ჩვენ ვიპოვით შექმნილ კონტროლერს app/Http/Controller/MyController.php
რამდენიმე ძირითადი კოდით უკვე დაწერილი და ჩვენ შეგვიძლია ცვლილებების შეტანა საჭიროებისამებრ.
ჩვენ უკვე ვნახეთ middleware
და ჩვენ ასევე შეგვიძლია გამოვიყენოთ იგი controller
. The middleware
ის ასევე შეიძლება მიენიჭოს კონტროლერის მარშრუტს ან კონტროლერის კონსტრუქტორში. შეგიძლიათ გამოიყენოთ მეთოდი middleware
დაავალოს middleware
al controller
. The middleware
რეგისტრირებული ასევე შეიძლება შემოიფარგლოს გარკვეული მეთოდებით controller
.
Route::get('profile', [
'middleware' => 'auth',
'uses' => 'UserController@showProfile'
]);
აქ ჩვენ ვანიჭებთ ავტორიზაციის შუა პროგრამას UserController-ს პროფილის გზაზე.
<?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');
}
}
აქ ჩვენ ვაძლევთ middleware
ავთენტიფიკაციის მეთოდის გამოყენებით middleware
კონსტრუქტორში MyController .
Გაითვალისწინე $this->middleware()
ფუნზიონა მხოლოდ თუ მას კონსტრუქტორში მიაკუთვნებ. თუ დავუძახებთ $this->middleware()
კონტროლერის კონკრეტული მეთოდიდან, ის არ გამოტოვებს შეცდომებს, მაგრამ შუა პროგრამა რეალურად არ იმუშავებს.
ეს ვარიანტი მოქმედებს, მაგრამ პირადად მე მირჩევნია ყველა შუალედური პროგრამა დავაყენო მასში routes
, რადგან უფრო ნათელია, სად უნდა ვეძებოთ ეს ყველაფერი middleware
.
1 – დავამატოთ ფაილს კოდის შემდეგი სტრიქონები მარშრუტები/ვებ.php და ჩვენ ვზოგავთ.
<?php
Route::get('/mycontroller/path',[
'middleware' => 'First',
'uses' => 'MyController@showPath'
]);
2 – შევქმნათ ა middleware
დაურეკა FirstMiddleware
კოდის შემდეგი ხაზის გაშვებით.
php artisan make:middleware FirstMiddleware
3 : დაამატეთ შემდეგი კოდი მეთოდში გაუმკლავდეს del FirstMiddleware
ახლახან შეიქმნა აპლიკაცია/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 – შევქმნათ ა middleware
დაურეკა SecondMiddleware შემდეგი ბრძანების გაშვებით.
php artisan make:middleware SecondMiddleware
5 : მოდით დავამატოთ შემდეგი კოდი სახელურის მეთოდში SecondMiddleware
ახლახან შეიქმნა აპლიკაცია/Http/Middleware .
<?php
namespace App\Http\Middleware;
use Closure;
class SecondMiddleware {
public function handle($request, Closure $next) {
echo '<br>Second Middleware';
return $next($request);
}
}
6 : შევქმნათ ა controller
დაურეკა MyController შემდეგი ხაზის გაშვებით.
php artisan make:controller MyController
7 – მას შემდეგ რაც url წარმატებით შესრულდება, თქვენ მიიღებთ შემდეგ გამომავალს –
8 - დააკოპირეთ შემდეგი კოდი ფაილში 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 – ახლა დავიწყოთ php შიდა ვებ სერვერი შემდეგი ბრძანების გაშვებით, თუ ჯერ არ გაგიკეთებიათ.
php artisan serve
10 – ეწვიეთ შემდეგ URL-ს.
http://localhost:8000/mycontroller/path
11 – გამომავალი გამოჩნდება, როგორც ნაჩვენებია შემდეგ სურათზე.
პრაქტიკულად ორივე შუა პროგრამაა ჩართული, მაგრამ მხოლოდ ერთი
Controller
di restful resource
ხშირად აპლიკაციის შექმნისას რაღაცის გაკეთება გჭირდებათ CRUD (Create, Read, Update, Delete)
. Laravel ამ საქმეს ამარტივებს. უბრალოდ შექმენით ა controller
და Laravel უზრუნველყოფს ოპერაციების ყველა მეთოდს ავტომატურად CRUD
. ჩვენ ასევე შეგვიძლია ჩავწეროთ ფაილში ყველა მეთოდის ერთი გზა route.php
.
1 : შექმენით კონტროლერი ე.წ MyController
შემდეგი ბრძანების გაშვებით.
php artisan make:controller MyController
2 : დაამატეთ შემდეგი კოდი 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 – დავამატოთ ფაილში კოდის შემდეგი ხაზი routes/web.php
.
Route::resource('my','MyController');
4 – ახლა ვარეგისტრირებთ MyController-ის ყველა მეთოდს კონტროლერის რესურსით რეგისტრაციით. ქვემოთ მოცემულია მოქმედებების ცხრილი, რომელსაც მართავს რესურსის კონტროლერი.
სიტყვა | ბილიკი | აქცია | მარშრუტის სახელი |
---|---|---|---|
მთავარი | / ჩემი | ინდექსი | ჩემი ინდექსი |
მთავარი | /ჩემი/შექმნა | შექმნა | ჩემი.შექმნა |
POST | / ჩემი | შესანახად | ჩემი.მაღაზია |
მთავარი | /ჩემი ჩემი} | დამალვა | ჩემი.ჩვენება |
მთავარი | /my/{my}/რედაქტირება | შეცვალონ | ჩემი.რედაქტირება |
PUT/PATCH | /ჩემი ჩემი} | განახლება | my.update |
წაშლა | /ჩემი ჩემი} | განადგურება | ჩემი. განადგურება |
5 – სცადეთ ქვემოთ მოცემულ ცხრილში ნაჩვენები URL-ების გაშვება.
URL | აღწერა | გასვლა |
---|---|---|
http://localhost:8000/my | შეასრულეთ MyController.php-ის ინდექსის მეთოდი | ინდექსი |
http://localhost:8000/my/create | შეასრულეთ MyController.php-ის შექმნის მეთოდი | შექმნა |
http://localhost:8000/my/1 | შეასრულეთ MyController.php-ის შოუ მეთოდი | დამალვა |
http://localhost:8000/my/1/edit | შეასრულეთ MyController.php-ის რედაქტირების მეთოდი | შეცვალონ |
Ercole Palmeri
ნებისმიერი ბიზნეს ოპერაცია აწარმოებს უამრავ მონაცემს, თუნდაც სხვადასხვა ფორმით. ხელით შეიყვანეთ ეს მონაცემები Excel ფურცლიდან…
კომპანიის ელ.ფოსტის კომპრომისი ორჯერ გაიზარდა 2024 წლის პირველ სამ თვეში, ბოლო კვარტალთან შედარებით…
ინტერფეისის სეგრეგაციის პრინციპი არის ობიექტზე ორიენტირებული დიზაინის ხუთი მყარი პრინციპიდან ერთ-ერთი. კლასს უნდა ჰქონდეს…
Microsoft Excel არის მონაცემთა ანალიზის საცნობარო ინსტრუმენტი, რადგან ის გთავაზობთ მრავალ ფუნქციას მონაცემთა ნაკრების ორგანიზებისთვის,…
Walliance, SIM და პლატფორმა ევროპის ლიდერებს შორის უძრავი ქონების Crowdfunding-ის სფეროში 2017 წლიდან, აცხადებს დასრულებას…
Filament არის "აჩქარებული" Laravel განვითარების ჩარჩო, რომელიც უზრუნველყოფს რამდენიმე სრული დასტას კომპონენტს. იგი შექმნილია პროცესის გასამარტივებლად…
„მე უნდა დავბრუნდე, რომ დავასრულო ჩემი ევოლუცია: მე კომპიუტერში საკუთარ თავს პროექტირებას მოვახდენ და სუფთა ენერგია გავხდები. მას შემდეგ რაც დასახლდა…
Google DeepMind წარმოგიდგენთ ხელოვნური ინტელექტის მოდელის გაუმჯობესებულ ვერსიას. ახალი გაუმჯობესებული მოდელი უზრუნველყოფს არა მხოლოდ…