લેખ

Laravel: laravel કંટ્રોલર્સ શું છે

MVC ફ્રેમવર્કમાં, અક્ષર "C" એ નિયંત્રકો માટે વપરાય છે, અને આ લેખમાં આપણે જોઈશું કે લારાવેલમાં નિયંત્રકોનો ઉપયોગ કેવી રીતે કરવો. દૃશ્યો અને મોડેલો વચ્ચે સીધા ટ્રાફિક તરીકે કાર્ય કરે છે. આ લેખમાં આપણે જોઈશું કે લારાવેલમાં કંટ્રોલર કેવી રીતે બનાવવું અને સેટઅપ કરવું.

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() તે કામ કરે છે સોલો જો તમે તેને કન્સ્ટ્રક્ટરમાં સોંપો છો. જો આપણે બોલાવીએ $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 ની તમામ પદ્ધતિઓની નોંધણી કરી રહ્યા છીએ. નીચે સંસાધન નિયંત્રક દ્વારા સંચાલિત ક્રિયાઓનું કોષ્ટક છે.

ક્રિયાપદપાથક્રિયારૂટનું નામ
મેળવો/ મારાઇન્ડેક્સમારી. અનુક્રમણિકા
મેળવો/my/createબનાવવાmy.create
પોસ્ટ/ મારાદુકાનમારી.સ્ટોર
મેળવો/મારુ મારુ}શોમારો.શો
મેળવો/my/{my}/સંપાદિત કરોસંપાદિત કરોmy.edit
મૂકો/પેચ/મારુ મારુ}સુધારોmy.update
કાઢી નાખો/મારુ મારુ}નાશમારા. નાશ

5 - નીચેના કોષ્ટકમાં દર્શાવેલ URL ને ચલાવવાનો પ્રયાસ કરો.

URL નેવર્ણનબહાર નીકળો
http://localhost:8000/myMyController.php ની ઇન્ડેક્સ પદ્ધતિ ચલાવોઇન્ડેક્સ
http://localhost:8000/my/createMyController.php ની બનાવવાની પદ્ધતિનો અમલ કરોબનાવટ
http://localhost:8000/my/1MyController.php ની શો પદ્ધતિ ચલાવોશો
http://localhost:8000/my/1/editMyController.php ની સંપાદન પદ્ધતિ ચલાવોસંપાદિત કરો

Ercole Palmeri

ઇનોવેશન ન્યૂઝલેટર
નવીનતા પરના સૌથી મહત્વપૂર્ણ સમાચારને ચૂકશો નહીં. તેમને ઇમેઇલ દ્વારા પ્રાપ્ત કરવા માટે સાઇન અપ કરો.

તાજેતરના લેખો

Excel માં ડેટા કેવી રીતે એકીકૃત કરવો

કોઈપણ વ્યવસાય કામગીરી વિવિધ સ્વરૂપોમાં પણ ઘણો ડેટા ઉત્પન્ન કરે છે. એક્સેલ શીટમાંથી આ ડેટાને મેન્યુઅલી દાખલ કરો...

14 મે 2024

સિસ્કો ટેલોસ ત્રિમાસિક વિશ્લેષણ: ગુનેગારો દ્વારા લક્ષિત કોર્પોરેટ ઈમેલ્સ ઉત્પાદન, શિક્ષણ અને આરોગ્યસંભાળ સૌથી વધુ અસરગ્રસ્ત ક્ષેત્રો છે

2024ના પ્રથમ ત્રણ મહિનામાં કંપનીના ઈમેઈલનું સમાધાન છેલ્લા ત્રિમાસિક ગાળાની સરખામણીમાં બમણાથી વધુ વધ્યું છે.

14 મે 2024

ઇન્ટરફેસ સેગ્રિગેશન સિદ્ધાંત (ISP), ચોથો સોલિડ સિદ્ધાંત

ઇન્ટરફેસ સેગ્રિગેશનનો સિદ્ધાંત ઑબ્જેક્ટ-ઓરિએન્ટેડ ડિઝાઇનના પાંચ સોલિડ સિદ્ધાંતોમાંથી એક છે. વર્ગમાં હોવું જોઈએ...

14 મે 2024

સારી રીતે કરવામાં આવેલ વિશ્લેષણ માટે, Excel માં ડેટા અને સૂત્રોને શ્રેષ્ઠ રીતે કેવી રીતે ગોઠવવું

માઈક્રોસોફ્ટ એક્સેલ એ ડેટા એનાલિસિસ માટેનું રેફરન્સ ટૂલ છે, કારણ કે તે ડેટા સેટ્સનું આયોજન કરવા માટે ઘણી સુવિધાઓ પ્રદાન કરે છે,…

14 મે 2024

બે મહત્વપૂર્ણ વોલાયન્સ ઇક્વિટી ક્રાઉડફંડિંગ પ્રોજેક્ટ્સ માટે સકારાત્મક નિષ્કર્ષ: જેસોલો વેવ આઇલેન્ડ અને મિલાનો વાયા રેવેના

2017 થી રિયલ એસ્ટેટ ક્રાઉડફંડિંગના ક્ષેત્રમાં યુરોપના નેતાઓમાં Walliance, SIM અને પ્લેટફોર્મ, પૂર્ણ થવાની જાહેરાત કરે છે…

13 મે 2024

ફિલામેન્ટ શું છે અને લારેવેલ ફિલામેન્ટનો ઉપયોગ કેવી રીતે કરવો

ફિલામેન્ટ એ "એક્સિલરેટેડ" લારેવેલ ડેવલપમેન્ટ ફ્રેમવર્ક છે, જે ઘણા ફુલ-સ્ટેક ઘટકો પ્રદાન કરે છે. તે પ્રક્રિયાને સરળ બનાવવા માટે રચાયેલ છે…

13 મે 2024

કૃત્રિમ બુદ્ધિમત્તાના નિયંત્રણ હેઠળ

"મારે મારી ઉત્ક્રાંતિ પૂર્ણ કરવા માટે પાછા ફરવું પડશે: હું મારી જાતને કમ્પ્યુટરની અંદર રજૂ કરીશ અને શુદ્ધ ઊર્જા બનીશ. એકવાર સ્થાયી થયા પછી…

10 મે 2024

ગૂગલની નવી આર્ટિફિશિયલ ઇન્ટેલિજન્સ ડીએનએ, આરએનએ અને "જીવનના તમામ પરમાણુઓ"નું મોડેલ બનાવી શકે છે.

Google DeepMind તેના આર્ટિફિશિયલ ઇન્ટેલિજન્સ મોડલનું સુધારેલું સંસ્કરણ રજૂ કરી રહ્યું છે. નવું સુધારેલું મોડલ માત્ર…

9 મે 2024

તમારી ભાષામાં ઇનોવેશન વાંચો

ઇનોવેશન ન્યૂઝલેટર
નવીનતા પરના સૌથી મહત્વપૂર્ણ સમાચારને ચૂકશો નહીં. તેમને ઇમેઇલ દ્વારા પ્રાપ્ત કરવા માટે સાઇન અપ કરો.

અમને અનુસરો

તાજેતરના લેખો