लेख

Laravel: Laravel रूटिंगचा परिचय

Laravel मधील राउटिंग वापरकर्त्यांना सर्व ऍप्लिकेशन विनंत्या योग्य कंट्रोलरकडे रूट करण्यास अनुमती देते. Laravel मधील बहुतेक प्राथमिक मार्ग एकसमान मालमत्ता अभिज्ञापक ओळखतात आणि क्लोजरसह स्वीकारतात, रूटिंगचा एक सोपा आणि अर्थपूर्ण मार्ग प्रदान करतात.

मार्ग (मार्ग) म्हणजे काय?

पथ हा तुमच्या अर्जासाठी विनंती URL तयार करण्याचा एक मार्ग आहे. या URLs वेबसाइटवरील विशिष्ट फायलींशी संबंधित असणे आवश्यक नाही आणि ते मानवी वाचनीय आणि SEO अनुकूल आहेत.

Laravel मध्ये, le फोल्डरमध्ये पथ तयार केले जातात routes. ते फाइलमध्ये तयार केले जातात web.php वेबसाइट्ससाठी आणि आत api.php API साठी.

क्वेस्ट route गटाला नियुक्त केले आहेत middleware नेटवर्क, सत्र स्थिती आणि सुरक्षा हायलाइट करणे CSRF. मध्ये मार्ग route/api.php ते स्टेटलेस आहेत आणि API मिडलवेअर गटाला नियुक्त केले आहेत.
प्री-इंस्टॉलेशनdefiLaravel nita दोन मार्गांसह येते, एक वेबसाठी आणि एक API साठी. वेबसाठीचा मार्ग असा दिसतो web.php:

Route::get('/', function () {
   return view('welcome');
});

Laravel मध्ये मार्ग काय आहे?

सर्व Laravel मार्ग आहेत definiti निर्देशिकेत असलेल्या पाथ फाइल्समध्ये routes. मार्ग व्यवस्थापन अनुप्रयोग, defiफाइल मध्ये nished App\Providers\RouteServiceProvider, या फायली आपोआप लाइन अप करण्याची काळजी घेते. फाईल route/web.php defiतुमच्या वेब इंटरफेससाठी मार्ग निश्चित करते.

हे शक्य आहे defiया कंट्रोलर क्रियेसाठी खालीलप्रमाणे मार्ग काढा:

Route::get(‘user/{id}’, ‘UserController@show’);

Route::resource: पद्धत Route::resource अनुप्रयोगासाठी आवश्यक असलेले सर्व मूलभूत मार्ग तयार करते आणि नियंत्रक वर्गाद्वारे व्यवस्थापित केले जाते.

जेव्हा विनंती निर्दिष्ट मार्ग URI शी जुळते, तेव्हा पद्धत लागू केली जाते show defiकंट्रोलर मध्ये समाप्त App\Http\ControllersUserController, पद्धतीमध्ये मार्ग पॅरामीटर्स पास करणे.

संसाधनांसाठी, तुम्हाला अनुप्रयोगावर दोन गोष्टी करण्याची आवश्यकता आहे Laravel. प्रथम, आपल्याला एक संसाधन मार्ग तयार करण्याची आवश्यकता आहे Laravel जे समाविष्ट करणे, अद्यतनित करणे, पहा आणि हटविणे पथ प्रदान करते. दुसरे, एक संसाधन नियंत्रक तयार करा जो समाविष्ट करणे, अद्यतनित करणे, पाहणे आणि हटवणे यासाठी एक पद्धत प्रदान करतो.

प्री-इंस्टॉलेशनdefiLaravel nita दोन मार्गांसह येते: एक वेबसाठी आणि एक API साठी. web.php मध्ये वेबचा मार्ग कसा दिसतो ते येथे आहे:

Route::get(‘/’, function () {

return view(‘welcome’);

});

Laravel Middleware विनंती आणि प्रतिक्रिया यांच्यातील पूल म्हणून काम करते. हे काही प्रकारचे फिल्टर घटक असू शकते.

Laravel a सह कार्य करा मिडलवेअर ज्यामध्ये क्लायंट अर्ज सत्यापित झाला आहे की नाही याची पुष्टी करण्याचे कार्य आहे. जर क्लायंटची पुष्टी झाली असेल, तर रूटिंग होम पेज किंवा लॉगिन पेजवर पुनर्निर्देशित करते.

साठी पद्धती route

मागील कोड defiमुख्यपृष्ठाकडे जाण्याचा मार्ग निश्चित करतो. जेव्हा जेव्हा या मार्गाला विनंती प्राप्त होते get प्रति /, परत करेल view welcome

सर्व Laravel मार्ग आहेत definiti तुमच्या मध्ये routing, जे डिरेक्टरी dei मध्ये स्थित आहेत routes. परिणामी, l'AppProvidersRouteServiceProvider या नोंदींच्या अर्जाच्या ओळींचा. फाईल route/web.php तुमच्या वेब इंटरफेससाठी व्यवस्थापित केलेले मार्ग समाविष्ट आहेत.

मार्गाची रचना अगदी सोपी आहे. योग्य फाइल उघडा (`web.phpo `api.php) आणि यासह कोडची ओळ सुरू करा `Route:: `, त्यानंतर तुम्ही त्या विशिष्ट मार्गाला नियुक्त करू इच्छित असलेल्या विनंतीनंतर आणि नंतर विनंतीनंतर केले जाणारे कार्य निर्दिष्ट करा.

Laravel खालील मार्ग पद्धती ऑफर करते:

  • get
  • post
  • put
  • delete
  • patch
  • options

मार्ग आहेत defiHTTP सह रूट क्लासमध्ये Laravel मध्ये nited, प्रत्युत्तर देण्यासाठी मार्ग आणि क्लोज किंवा कंट्रोलर.

Laravel मध्ये मार्ग कसे तयार करावे

लारावेलमध्ये तुम्ही तुमचे स्वतःचे मार्ग कसे तयार करू शकता ते पाहू या.

मूलभूत GET मार्ग

आता मी एक मूलभूत मार्ग तयार करणार आहे जो 2 चे वेळापत्रक छापेल.

Route::get('/table', function () {
   for($i =1; $i <= 10 ; $i++){
       echo "$i * 2 = ". $i*2 ."<br>";
   }   
});

वरील कोडमध्ये, मी URL साठी GET विनंती मार्ग तयार केला आहे /table, जे स्क्रीनवर 2 चे वेळापत्रक मुद्रित करेल.

आता तोच कोड पाहू, ज्या संख्येसाठी आपल्याला गुणाकार सारणी हवी आहे ते पॅरामीटराइजिंग करू.

Route::get('/table/{number}', function ($number) {
   for($i =1; $i <= 10 ; $i++){
       echo "$i * $number = ". $i* $number ."<br>";
   }   
});

कोडमध्ये 'number' ब्रेसेसमधील पॅरामीटर दर्शविते, म्हणजे ज्या संख्येसाठी गुणाकार सारणीची गणना केली जाईल. जेव्हा जेव्हा प्रकाराची URL निर्दिष्ट केली जाते /table/n, नंतर संख्या तक्ता मुद्रित होईल n.

दोन्ही वैशिष्ट्ये एकाच मार्गात एकत्र करण्याचा मार्ग देखील आहे. Laravel पर्यायी पॅरामीटर्स वैशिष्ट्य देते जे तुम्हाला प्रश्नचिन्ह '?' वापरून पर्यायी मापदंड जोडण्याची परवानगी देते. पर्यायी पॅरामीटर आणि प्री व्हॅल्यू नंतरdefiरात्री चला उदाहरण पाहू:

Route::get('/table/{number?}', function ($number = 2) {
   for($i =1; $i <= 10 ; $i++){
       echo "$i * $number = ". $i* $number ."<br>";
   }   
});

वरील कोडमध्ये आम्ही आमचे रूट पॅरामीटर तयार केले आहे, संख्या पर्यायी बनवून, जर वापरकर्ता `रूट करत असेल तर/table` मग ते डीफॉल्टनुसार 2 चे टेबल तयार करेलdefinite आणि जर वापरकर्ता ` कडे जात असेल/table/{number}मग नंबर टेबल 'number' उत्पादन केले जाईल.

मार्ग पॅरामीटर्ससाठी प्रतिबंध म्हणून नियमित अभिव्यक्ती

मागील उदाहरणात आम्ही गुणाकार सारणी तयार करण्यासाठी एक मार्ग तयार केला आहे, परंतु गुणाकार सारणी तयार करताना त्रुटी टाळण्यासाठी, पथाचे पॅरामीटर खरोखर संख्या आहे याची खात्री कशी करू शकतो?

Laravel मध्ये, आपण करू शकता defi` पद्धत वापरून रूट पॅरामीटरवर मर्यादा घालणेwhere` मार्ग उदाहरणावर. द `where` पॅरामीटरचे नाव आणि त्या पॅरामीटरसाठी रेग्युलर एक्सप्रेशन घेते.

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

आता आपल्या ` पॅरामीटरसाठी मर्यादाचे उदाहरण पाहू{numero}फंक्शनला फक्त एक संख्या पास केली आहे याची खात्री करण्यासाठी.

Route:: get ( '/table/{numero?}' , funzione ( $numero = 2 ) {    
   for( $i = 1 ; $i < = 10 ; $i + + ) {   
       echo "$i * $numero = " . $i * $numero . "<br>" ; 
   }   
} )->where( 'numero' , '[0-9]+' ) ;

वरील कोडमध्ये, आम्ही पथ क्रमांकासाठी नियमित अभिव्यक्ती वापरली. आता, जर वापरकर्त्याने मार्ग काढण्याचा प्रयत्न केला /टेबल/नंबर प्रदर्शित केले जाईल एक NotFoundHttpException अपवाद.

नियंत्रण कार्यासह Laravel रूटिंग

Laravel मध्ये, आपण करू शकता defiपथासाठी कंट्रोलर पद्धत वापरा. कंट्रोलर पद्धत सर्व क्रिया करते defiप्रत्येक वेळी वापरकर्त्याने मार्गावर प्रवेश केल्यावर nite.
खालील कोडसह आम्ही कंट्रोलर पद्धत नियुक्त करत आहोत 'functionname' मार्गाकडे:

Route:: get ( '/home' , 'YourController@functionname' ) ;

संहितेची सुरुवात होते `Route::` आणि म्हणूनच defiमार्गासाठी विनंती पद्धत nishes. त्यानंतर, defiपद्धतीच्या नावापूर्वी @ चिन्ह जोडून तुमचा पथ आणि नियंत्रक पद्धतीसह समाप्त करा.

मार्गाला नाव द्या

Laravel मध्ये, आपण करू शकता defiतुमच्या मार्गाला एक नाव द्या. हे नाव अनेकदा खूप उपयुक्त आहे. उदाहरणार्थ, जर तुम्ही वापरकर्त्याला एका ठिकाणाहून दुसर्‍या स्थानावर पुनर्निर्देशित करू इच्छित असाल, तर तुम्हाला ते करण्याची गरज नाही defiपूर्ण पुनर्निर्देशित URL nish. तुम्ही फक्त त्याचे नाव देऊ शकता. आपण करू शकता defi` पद्धत वापरून मार्गाचे नाव निश कराname` मार्ग उदाहरणामध्ये.

Route::get('/table/{number?}', function ($number = 2) {
   for($i =1; $i <= 10 ; $i++){
       echo "$i * $number = ". $i* $number ."<br>";
   }   
})->where('number', '[0-9]+')->name(‘table’);

आता, मी खालील कोडद्वारे या मार्गासाठी url पुन्हा निर्माण करू शकतो:

$url = route('table');

त्याचप्रमाणे, या URL वर पुनर्निर्देशित करण्यासाठी, योग्य वाक्यरचना असेल:

return redirect()->route('table');

Route Groups

I Route Groups, अक्षरशः पथ गट, हे Laravel मधील एक अत्यावश्यक वैशिष्ट्य आहे, जे तुम्हाला मार्ग गटबद्ध करण्यास अनुमती देते. जेव्हा तुम्ही सर्व गटबद्ध पथांवर विशेषता लागू करू इच्छित असाल तेव्हा पथ गट उपयुक्त आहेत. जर तुम्ही पथ गट वापरत असाल, तर तुम्हाला प्रत्येक पथावर वैयक्तिकरित्या विशेषता लागू करण्याची गरज नाही; हे डुप्लिकेशन टाळते. हे तुम्हाला सारखे गुणधर्म सामायिक करण्यास अनुमती देते middleware o namespaces, सेन्झा defiप्रत्येक वैयक्तिक मार्गावर या विशेषता पूर्ण करा. या सामायिक गुणधर्म पद्धतीचे पहिले पॅरामीटर म्हणून अॅरे फॉरमॅटमध्ये पास केले जाऊ शकतात Route::group.

मार्ग गटाचे वाक्यरचना

Route::group([], callback);  

कबुतरासारखा []: प्रथम पॅरामीटर म्हणून गट पद्धतीला दिलेला अ‍ॅरे आहे.

चे उदाहरण Route Group नेल web.php

Route::group([], function()  
{  
   Route::get('/first' , function()  
   {  
      echo "first way route" ;   
   });  
   Route::get('/second' , function()  
   {  
      echo "second way route" ;   
   });  
   Route::get('/third' , function()  
   {  
      echo "third way route" ;   
   });  
});  

कोडमध्ये, defiचला पद्धत शोधूया गट(), ज्यामध्ये दोन पॅरामीटर्स आहेत, उदा array e closure. च्या आत closure, आम्ही करू शकतो defiकिती पूर्ण करा route आम्हाला पाहिजे. वरील कोडमध्ये, आमच्याकडे आहे defiतीन पूर्ण केले route.

जर ब्राउझरद्वारे आम्ही URL मध्ये प्रवेश करतो localhost/myproject/first मग पहिला हस्तक्षेप करतो route ब्राउझरमध्ये टाइप करत आहे first way route.

URL सह localhost/myproject/second नंतर दुसरा येतो route ब्राउझरमध्ये टाइप करत आहे second way route.

URL सह असताना localhost/myproject/third नंतर तिसरा येतो route ब्राउझरमध्ये टाइप करत आहे third way route.

चे उपसर्ग Route Groups

चे उपसर्ग route ते वापरले जातात जेव्हा आम्हाला एकाधिक साठी समान URL रचना प्रदान करायची असते route.

आम्ही सर्व पथांसाठी उपसर्ग निर्दिष्ट करू शकतो defiमध्ये उपसर्ग अ‍ॅरे पर्याय वापरून गटातील nites Route Groups.

चे उदाहरण web.php

Route::group(['prefix' => 'movie'], function()  
{  
   Route::get('/godfather',function()  
   {  
     echo "Godfather casting";  
   });  
   Route::get('/pulpfiction',function()  
   {  
     echo "Pulp Fiction casting";  
   });  
   Route::get('/forrestgump',function()  
   {  
     echo "Forrest Gump casting";  
   });  
});  

कोडमध्ये खालील URL वरून प्रवेश करता येणारे तीन मार्ग आहेत:

/movie/godfather  --->   Godfather casting

/movie/pulpfiction  --->   Pulp Fiction casting

/movie/forrestgump  --->   Forrest Gump casting

मिडलवेअर

आम्ही गटातील सर्व मार्गांना मिडलवेअर देखील नियुक्त करू शकतो. मिडलवेअर असणे आवश्यक आहे defiगट तयार करण्यापूर्वी समाप्त. हे कसे करायचे ते पाहण्यासाठी, आमचा लेख वाचा Laravel Middleware ते कसे कार्य करते.

उदाहरण:

Route::middleware(['age'])->group( function()  
{  
  
   Route::get('/godfather',function()  
   {  
     echo "Godfather casting";  
   });  
   Route::get('/pulpfiction',function()  
   {  
     echo "Pulp Fiction casting";  
   });  
   Route::get('/forrestgump',function()  
   {  
     echo "Forrest Gump casting";  
   });  
  
});  

पथ नाव उपसर्ग

पद्धत name च्या प्रत्येक नावाचा उपसर्ग करण्यासाठी वापरला जातो route निर्दिष्ट स्ट्रिंगसह. पद्धतीत name, आपल्याला उपसर्गामध्ये अनुगामी वर्ण असलेली स्ट्रिंग निर्दिष्ट करणे आवश्यक आहे.

उदाहरणार्थ web.php

Route::name('movie.')->group(function()  
{  
   Route::get('users', function()  
   {  
      return "movie.films";  
   })->name('films');  
});  

Ercole Palmeri

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

अलीकडील लेख

भविष्य येथे आहे: शिपिंग उद्योग जागतिक अर्थव्यवस्थेत कशी क्रांती घडवत आहे

नौदल क्षेत्र ही एक खरी जागतिक आर्थिक शक्ती आहे, ज्याने 150 अब्जांच्या बाजारपेठेकडे नेव्हिगेट केले आहे...

1 मे 2024

आर्टिफिशियल इंटेलिजन्सद्वारे प्रक्रिया केलेल्या माहितीच्या प्रवाहाचे नियमन करण्यासाठी प्रकाशक आणि OpenAI करारांवर स्वाक्षरी करतात

गेल्या सोमवारी, फायनान्शिअल टाईम्सने OpenAI सह करार जाहीर केला. FT ने त्याच्या जागतिक दर्जाच्या पत्रकारितेचा परवाना…

30 एप्रिल 2024

ऑनलाइन पेमेंट: स्ट्रीमिंग सेवा तुम्हाला कायमचे पैसे कसे देतात ते येथे आहे

लाखो लोक स्ट्रीमिंग सेवांसाठी पैसे देतात, मासिक सदस्यता शुल्क भरतात. असे सामान्य मत आहे की आपण…

29 एप्रिल 2024

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

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

23 एप्रिल 2024

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

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

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