تغییر مسیرها در لاراول – 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
پس از اجرای موفقیت آمیز ، خروجی زیر را دریافت خواهید کرد.
کپی کردن کد زیر برای پرونده
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
نتیجه گیری
تغییر مسیرها در لاراول به همان سادگی که دیدید انجام می شوند اما بخاطر داشته باشید این کار باید با طراحی و نقشخه کشی ازقبل تعیرف شده باشد و شما دسته های خود را با مسیر های درست و یکپارچه رسم کنید.
این مقاله چقدر براتون مفید بود؟