Creare un controller
په لارویل کېد جوړولو لپاره controller
، موږ باید د کمانډ پرامپټ یا ټرمینل خلاص کړو ، د هغه عملیاتي سیسټم له مخې چې موږ یې کاروو ، او د کنټرولر رامینځته کولو لپاره لاندې کمانډ ټایپ کړئ Artisan CLI (Command Line Interface).
php artisan make:controller <controller-name> --plain
پر ځای <controller-name>
ستاسو د نوم سره controller
. دا به یو جوړ کړي controller
. د controller
جوړ شوی په کې لیدل کیدی شي app/Http/Controllers
.
تاسو به وګورئ چې ځینې لومړني کوډونه دمخه ستاسو لپاره ترسره شوي او تاسو کولی شئ خپل دودیز کوډینګ اضافه کړئ. د 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
. د middleware
دا د کنټرولر لارې یا د کنټرولر جوړونکي دننه هم ټاکل کیدی شي. تاسو کولی شئ طریقه وکاروئ middleware
د سپارلو لپاره middleware
al controller
. د middleware
ثبت هم کیدای شي د ځانګړو میتودونو پورې محدود وي controller
.
Route::get('profile', [
'middleware' => 'auth',
'uses' => 'UserController@showProfile'
]);
دلته موږ د پروفایل په لاره کې د کارونکي کنټرولر ته د تصدیق کولو مینځپانګه ګمارو.
<?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
په جوړونکي کې مای کنټرولر .
هغه یاداښت کړه $this->middleware()
دغه کار کوی solo که تاسو دا په جوړونکي کې وټاکئ. که موږ غږ وکړو $this->middleware()
د یو ځانګړي کنټرولر میتود څخه، دا به کومه تېروتنه ونه کړي مګر منځنی ویر به واقعیا کار ونکړي.
دا اختیار د اعتبار وړ دی، مګر په شخصي توګه زه ترجیح ورکوم چې ټول مینځنی توکي په کې واچوم routes
، ځکه چې دا روښانه ده چې چیرې د ټولو لپاره وګورو middleware
.
1 - راځئ چې فایل ته د کوډ لاندې لینونه اضافه کړو لارې/web.php او موږ خوندي کوو.
<?php
Route::get('/mycontroller/path',[
'middleware' => 'First',
'uses' => 'MyController@showPath'
]);
2 - راځئ چې یو جوړ کړو middleware
چیاماتو FirstMiddleware
د کوډ لاندې لاین چلولو سره.
php artisan make:middleware FirstMiddleware
3 : په طریقه کې لاندې کوډ اضافه کړئ سمبال کړئ ډیل FirstMiddleware
یوازې په کې رامینځته شوی اپلیکیشن/Http/میډل ویئر .
<?php
namespace App\Http\Middleware;
use Closure;
class FirstMiddleware {
public function handle($request, Closure $next) {
echo '<br>First Middleware';
return $next($request);
}
}
4 - راځئ چې یو جوړ کړو middleware
چیاماتو دوهم منځنی سامان د لاندې کمانډ په چلولو سره.
php artisan make:middleware SecondMiddleware
5 : راځئ چې لاندې کوډ د لاسوند میتود کې اضافه کړو SecondMiddleware
یوازې په کې رامینځته شوی اپلیکیشن/Http/میډل ویئر .
<?php
namespace App\Http\Middleware;
use Closure;
class SecondMiddleware {
public function handle($request, Closure $next) {
echo '<br>Second Middleware';
return $next($request);
}
}
6 : راځئ چې یو جوړ کړو controller
چیاماتو مای کنټرولر د لاندې کرښې په چلولو سره.
php artisan make:controller MyController
7 - وروسته له دې چې یو آر ایل په بریالیتوب سره اجرا شي، تاسو به لاندې محصول ترلاسه کړئ -
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 artisan serve
10 - لاندې URL ته مراجعه وکړئ.
http://localhost:8000/mycontroller/path
11 - محصول به څرګند شي لکه څنګه چې په لاندې عکس کې ښودل شوي.
په حقیقت کې دواړه منځني توکي ښکیل دي، مګر یوازې یو
Controller
di restful resource
ډیری وختونه کله چې یو اپلیکیشن رامینځته کړئ تاسو اړتیا لرئ یو څه وکړئ CRUD (Create, Read, Update, Delete)
. Laravel دا کار اسانه کوي. یوازې یو جوړ کړئ controller
او لارویل به په اتوماتيک ډول د عملیاتو لپاره ټولې میتودونه چمتو کړي 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 ټولې میتودونه راجستر کوو. لاندې د هغو کړنو جدول دی چې د سرچینې کنټرولر لخوا اداره کیږي.
ژبی | پټه | کړنه | د لارې نوم |
---|---|---|---|
ترلاسه سره | / زما | شاخص | زما شاخص |
ترلاسه سره | /زما/جوړول | جوړ کړي | زما.جوړول |
وروستۍ | / زما | پلورنځي | زما پلورنځی |
ترلاسه سره | /زما/{زما} | خپرونه | زما شو |
ترلاسه سره | /my/{my}/edit | سمول | my.edit |
واچول/پیچ | /زما/{زما} | تازه | زما تازه کول |
ړنګول | /زما/{زما} | ړنګول | زما. تباه کول |
5 - په لاندې جدول کې ښودل شوي URLs چلولو هڅه وکړئ.
URL | Description | وتون |
---|---|---|
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
مایکروسافټ ایکسل د ډیټا تحلیل لپاره د حوالې وسیله ده ، ځکه چې دا د ډیټا سیټونو تنظیم کولو لپاره ډیری ب featuresې وړاندې کوي ،…
والینس، سیم او پلیټ فارم په اروپا کې د 2017 راهیسې د املاکو کراوډ فنډینګ په برخه کې د مشرانو تر مینځ ، د بشپړیدو اعلان کوي ...
فیلامینټ د لارویل پراختیا یو "ګړندی" چوکاټ دی، ډیری بشپړ سټیک اجزا چمتو کوي. دا د پروسې ساده کولو لپاره ډیزاین شوی ...
"زه باید بیرته خپل تکامل بشپړ کړم: زه به خپل ځان په کمپیوټر کې دننه کړم او خالص انرژي شم. یوځل میشته…
ګوګل ډیپ مائنډ د خپل مصنوعي استخباراتو ماډل یوه پرمختللې نسخه معرفي کوي. نوی پرمختللي ماډل نه یوازې چمتو کوي ...
لارویل، د خپل ښکلي نحو او ځواکمنو ځانګړتیاو لپاره مشهور، د ماډلر معمارۍ لپاره یو پیاوړی بنسټ هم چمتو کوي. هلته…
سیسکو او سپلنک د پیرودونکو سره مرسته کوي چې د راتلونکي امنیت عملیاتو مرکز (SOC) ته خپل سفر ګړندي کړي ...
Ransomware د تیرو دوه کلونو راهیسې په خبرونو تسلط لري. ډیری خلک ښه پوهیږي چې بریدونه ...