تغییر-مسیرها-در-لاراول

تغییر مسیرها در لاراول – Laravel Redirections

دسته بندی : لاراول سطح مقاله : متوسط زمان مطالعه : 5 دقیقه آخرین بروز رسانی: 07 مرداد 1399

از route نامگذاری شده برای نامگذاری خاص یک route استفاده می شود ، این نام را می توان با استفاده از کلید آرایه “as” اختصاص داد. تغییر مسیرها در لاراول بسیار راحت و با امکانات فراوان انجام می گیرد.

Route::get('user/profile', ['as' => 'profile', function () {
   //
}]);

توجه – در اینجا ، ما مشخصات profile را به user/profile مسیر داده ایم.

هدایت به مسیرهای نامگذاری شده

برای درک بیشتر در مورد هدایت به مسیرهای مشخص شده ، مثال زیر را مشاهده کنید.

نمایی به نام test.php ایجاد کرده و در آن ذخیره کنید.

resources/views/test.php

<html>
   <body>
      <h1>Example of Redirecting to Named Routes</h1>
   </body>
</html>

در routes.php مسیر را برای فایل test.php تنظیم کرده ایم. ما آن را به آزمایش تغییر نام داده ایم. ما همچنین مسیر، تغییر مسیر دیگری را تنظیم کرده ایم که درخواست را به آزمایش مسیر مشخص شده هدایت می کند.

app/Http/routes.php

Route::get('/test', ['as'=>'testing',function() {
   return view('test2');
}]);

Route::get('redirect',function() {
   return redirect()->route('testing');
});

برای تست ، مثال مسیر مشخص شده از URL زیر بازدید کنید.

http://localhost:8000/redirect

پس از اجرای URL فوق ، به عنوان http:// localhost: 8000 / test هدایت می شوید زیرا ما به آزمایش مسیر مشخص شده هدایت می کنیم.

Redirecting to Controller Actions

نه تنها مسیر نامگذاری شده بلکه ما همچنین می توانیم به اقدامات کنترل کننده تغییر مسیر دهیم. ما باید همانطور که در مثال زیر نشان داده شده است ، کنترل کننده و نام عمل را به سادگی به روش عمل منتقل کنیم. اگر می خواهید یک پارامتر را تصویب کنید ، می توانید آن را به عنوان آرگومان دوم روش عمل منتقل کنید.

return redirect()->action(‘NameOfController@methodName’,[parameters]);

برای ایجاد یک کنترلر به نام RedirectController ، دستور زیر را اجرا کنید.

php artisan make:controller RedirectController --plain

پس از اجرای موفقیت آمیز ، خروجی زیر را دریافت خواهید کرد.

redirect_controller

کپی کردن کد زیر برای پرونده

app/Http/Controllers/RedirectController.php.

app/Http/Controllers/RedirectController.php

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;

class RedirectController extends Controller {
   public function index() {
      echo "Redirecting to controller's action.";
   }
}

خطوط زیر را در app/Http/routes.php اضافه کنید.

Route::get('rr','RedirectController@index');
Route::get('/redirectcontroller',function() {
   return redirect()->action('RedirectController@index');
});

برای آزمایش مثال به آدرس زیر مراجعه کنید.

http://localhost:8000/redirectcontroller

تمامی مقالات لاراول را در دویکس مشاهده کنید.

منبع : tutorialspoint

نتیجه گیری

تغییر مسیرها در لاراول به همان سادگی که دیدید انجام می شوند اما بخاطر داشته باشید این کار باید با طراحی و نقشخه کشی ازقبل تعیرف شده باشد و شما دسته های خود را با مسیر های درست و یکپارچه رسم کنید.

این مقاله چقدر براتون مفید بود؟

اولین امتیاز را ثبت کنید😊