درس 14 - Redirection ها در لاراول

 

آموزش Redirection ها در لاراول

آموزش کار با Redirection ها در فریمورک لاراول

در فریمورک لاراول شما میتوانید به route های خود نام اختصاص دهید. نام هر route توسط کلمه as میتواند تعریف شود. به مثال زیر دقت کنید.

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

نکته‌: در مثال بالا ما نام profile را به مسیر user/profile اختصاص داده ایم.

redirect کردن به یک route توسط نام (name) تعریف شده برای آن

برای درک نحوه ی 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 - نتیجه ی نمایش داده شده در مرورگر باید مشابه تصویر زیر باشد.

آموزش redirect کردن به یک کنترلر در فریمورک لاراول

پایان