लेख

Laravel: laravel नियंत्रक काय आहेत

MVC फ्रेमवर्कमध्ये, "C" अक्षराचा अर्थ नियंत्रक आहे आणि या लेखात आपण Laravel मध्ये Controllers कसे वापरायचे ते पाहू. दृश्ये आणि मॉडेल दरम्यान थेट रहदारी म्हणून कार्य करते. या लेखात आपण Laravel मध्ये कंट्रोलर कसे तयार करायचे आणि कसे सेट करायचे ते पाहू.

Creare un controller laravel मध्ये

तयार करण्यासाठी ए 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'
]);

येथे आम्‍ही प्रोफाईल पाथमध्‍ये 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 कन्स्ट्रक्टर मध्ये माय कंट्रोलर .

लक्षात ठेवा की $this->middleware() हे कार्य करते सोलो तुम्ही कन्स्ट्रक्टरमध्ये नियुक्त केल्यास. आम्ही फोन केला तर $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 - 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 च्या सर्व पद्धतींची नोंदणी करत आहोत. खाली संसाधन नियंत्रकाद्वारे व्यवस्थापित केलेल्या क्रियांची सारणी आहे.

क्रियापदपथकृतीमार्गाचे नाव
GET/ माझेनिर्देशांकमाझी अनुक्रमणिका
GET/my/createतयारमाझे.निर्मिती
पोस्ट/ माझेस्टोअरमाझे दुकान
GET/माझा माझा}शोमाझा.शो
GET/my/{my}/संपादनसुधारणेमाझे.संपादन
पुट/पॅच/माझा माझा}सुधारणामाझे अपडेट
DELETE/माझा माझा}नष्ट करामाझे. नष्ट करा

5 - खालील तक्त्यामध्ये दर्शविलेल्या URL चालवण्याचा प्रयत्न करा.

URLवर्णनबाहेर पडा
http://localhost:8000/myMyController.php ची अनुक्रमणिका पद्धत कार्यान्वित करानिर्देशांक
http://localhost:8000/my/createMyController.php ची तयार करण्याची पद्धत कार्यान्वित कराcreare
http://localhost:8000/my/1MyController.php ची शो पद्धत कार्यान्वित कराशो
http://localhost:8000/my/1/editMyController.php ची संपादन पद्धत कार्यान्वित करासुधारणे

Ercole Palmeri

इनोव्हेशन वृत्तपत्र
नवोपक्रमावरील सर्वात महत्त्वाच्या बातम्या चुकवू नका. त्यांना ईमेलद्वारे प्राप्त करण्यासाठी साइन अप करा.

अलीकडील लेख

Veeam मध्ये रॅन्समवेअरसाठी सर्वात व्यापक समर्थन, संरक्षणापासून प्रतिसाद आणि पुनर्प्राप्तीपर्यंत वैशिष्ट्ये आहेत

Veeam द्वारे Coveware सायबर खंडणी घटना प्रतिसाद सेवा प्रदान करणे सुरू ठेवेल. Coveware फॉरेन्सिक आणि उपाय क्षमता प्रदान करेल…

23 एप्रिल 2024

हरित आणि डिजिटल क्रांती: भविष्यसूचक देखभाल तेल आणि वायू उद्योगात कशी बदल घडवत आहे

वनस्पती व्यवस्थापनासाठी नाविन्यपूर्ण आणि सक्रिय दृष्टीकोनसह, भविष्यसूचक देखभाल तेल आणि वायू क्षेत्रात क्रांती घडवत आहे.…

22 एप्रिल 2024

यूके अँटिट्रस्ट रेग्युलेटरने GenAI वर BigTech अलार्म वाढवला

UK CMA ने आर्टिफिशियल इंटेलिजन्स मार्केटमध्ये बिग टेकच्या वर्तनाबद्दल चेतावणी जारी केली आहे. तेथे…

18 एप्रिल 2024

कासा ग्रीन: इटलीमध्ये शाश्वत भविष्यासाठी ऊर्जा क्रांती

इमारतींची उर्जा कार्यक्षमता वाढविण्यासाठी युरोपियन युनियनने तयार केलेल्या "ग्रीन हाऊसेस" डिक्रीने त्याची वैधानिक प्रक्रिया पूर्ण केली आहे ...

18 एप्रिल 2024

तुमच्या भाषेत इनोव्हेशन वाचा

इनोव्हेशन वृत्तपत्र
नवोपक्रमावरील सर्वात महत्त्वाच्या बातम्या चुकवू नका. त्यांना ईमेलद्वारे प्राप्त करण्यासाठी साइन अप करा.

आमचे अनुसरण करा