در فریمورک لاراول شما میتوانید به route های خود نام اختصاص دهید. نام هر route توسط کلمه as میتواند تعریف شود. به مثال زیر دقت کنید.
Route::get('user/profile', ['as' => 'profile', function () {
//
}]);
نکته: در مثال بالا ما نام profile را به مسیر user/profile اختصاص داده ایم.
برای درک نحوه ی redirect کردن در فریمورک لاراول به یک route توسط نام آن مثال زیر را برای شما فراهم کرده ایم.
قدم 1 - یک فایل viewدر لاراول خود بسازید و نام آنرا test.php قرار دهید. این فایل در مسیر resources/views/test.php باشد و محتویات زیر را درون آن بنویسید.
<html>
<body>
<h1>Example of Redirecting to Named Routes</h1>
</body>
</html>
قدم 2 - در فایل مسیر ها یا route های مربوط به لاراول خود یک مسیر به سوی test.php باید ایجاد کنیم. ما نام آنرا testing قرار میدهیم. سپس یک route دیگری به نام redirect میسازیم که از طریق آن یک ریدایرکت انجام دهیم که ما را به مسیر testing ریدایرکت میکند.
کدهای زیر را در route های فریمورک لاراول خود بنویسید.
Route::get('/test', ['as'=>'testing',function() {
return view('test2');
}]);
Route::get('redirect',function() {
return redirect()->route('testing');
});
قدم 3 - مرورگر خود را باز کنید و به url زیر مراجعه کنید تا نتیجه را مشاهده کنید.
http://localhost:8000/redirect
قدم 4 - بعد از وارد کردن آدرس بالا در مرورگر خود فریمورک لاراول شما را به مسیر جدید http://localhost:8000/test ریدایرکت خواهد کرد چون ما مسیر بالا را به testing ریدایرکت کردیم.
قدم 5 - در نهایت باید نتیجه ی زیر را در مرورگر خود مشاهده کنید.
در فریمورک لاراول ما نه تنها به نام route ها میتوانیم ریدایرکت کنیم بلکه میتوانیم به یک action از یک controller نیز ریدایرکت کنیم.
برای ریدایرکت کردن به یک controller و یک action خاص باید نام کنترلر و اکشن مربوطه را طبق مثال زیر به متود action معرفی کنید.
return redirect()->action(‘NameOfController@methodName’,[parameters]);
مثال
قدم 1 - دستور زیر را اجرا کنید تا یک کنترلر به نام RedirectController بسازید.
php artisan make:controller RedirectController --plain
قدم 2 - بعد از اجرای موفق دستور بالا در ترمینال یا کامند پرومپ باید نتیجه ی زیر را مشاهده کنید.
قدم 3 - کدهای زیر را کپی کنید و در مسیر 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.";
}
}
قدم 4 - کدهای زیر را به فایل route های فریمورک لاراول خود اضافه کنید.
Route::get('rr','RedirectController@index');
Route::get('/redirectcontroller',function() {
return redirect()->action('RedirectController@index');
});
قدم 5 - از طریق مرورگر خود به آدرس زیر مراجعه کنید تا نتیجه ی کار را مشاهده کنید.
http://localhost:8000/redirectcontroller
قدم 6 - نتیجه ی نمایش داده شده در مرورگر باید مشابه تصویر زیر باشد.
پایان
محصولات برگزیده مناسب شما
دوره ی آموزش کامل فریمورک لاراول Laravel دوره پروژه محور ساخت فروشگاه بامیلو با لاراول کارگاه آموزشی نحوه ی آپدیت ورژن فریمورک laravel دوره ی آموزش ویوجی اس ( Vuejs 3) پروژه محور به همراه Nuxt js