با عرض سلام خدمت کاربران عزیز سایت پی وی لرن و کاربرانی که دوره کامل آموزش لاراول را دنبال می کنند، در این پست به موضوع Redirection یا هدایت در لاراول پرداختیم. Redirection در لاراول به یک نام خاص اطلاق می شود. این نام را می توان با استفاده از کلید آرایه “as” تعریف کرد. در ادامه این مباحث جهت آشنایی بیشتر با هدایت در لاراول با ما همراه باشید.
در این مبحث به صورت خلاصه و با ذکر مثالهایی سعی شده تا مبحث Redirection در لاراول به طور کلی توضیح داده شود.
1 2 3 | Route::get('user/profile', ['as' => 'profile', function () { // }]); |
در اینجا، ما مشخصات نام را به مسیر user/profile داده ایم.
برای دیدن بیشتر در مورد تغییر مسیر به مسیرهای نامشخص، به مثال زیر توجه کنید:
مرحله ۱ : ایجاد نمایه با نام test.php و ذخیره آن در resources/views/test.php.
1 2 3 4 5 | <html> <body> <h1>Example of Redirecting to Named Routes</h1> </body> </html> |
مرحله ۲ : در routes.php، ما راه را برای فایل test.php تنظیم کرده ایم. ما آن را برای تست تغییر نام دادیم.
ما همچنین راه دیگری مسیریابی را راه اندازی کرده ایم که این درخواست را به تست مسیر نامگذاری شده هدایت می کند.
app / Http / routes.php
1 2 3 4 5 6 7 | Route::get('/test', ['as'=>'testing',function() { return view('test2'); }]); Route::get('redirect',function() { return redirect()->route('testing'); }); |
مرحله ۳ : برای آزمایش مثال نمونه مسیری، از URL زیر دیدن کنید.
1 | http://localhost:8000/redirect |
مرحله ۴ : پس از اجرای URL فوق، به مسیر ost: 8http: // localh000 / test هدایت می شوید، به عنوان مسیریابی به مسیر تست مسیریابی هدایت می شوید.
مرحله ۵ : پس از اجرای موفق URL، خروجی زیر را دریافت خواهید کرد.
هدایت به عملیات کنترل نوعی از هدایت در لاراول به شمار می رود.
این نوع Redirection در لاراول ، نه تنها مسیر نامیده می شود، بلکه ما می توانیم به فعالیت های کنترل کننده هدایت کنیم. ما باید به سادگی کنترل کننده و نام عمل را به روش عمل تغییر دهیم.
همانطور که در مثال زیر نشان داده شده است. اگر می خواهید پارامتر را حفظ کنید، می توانید آن را به عنوان استدلال دوم روش عمل انتقال دهید.
1 | return redirect()->action(‘NameOfController@methodName’,[parameters]); |
مرحله ۱ : دستور زیر را برای ایجاد یک کنترلر به نام RedirectController اجرا کنید.
1 | php artisan make:controller RedirectController --plain |
مرحله ۲ : پس از اجرای موفق، خروجی زیر را دریافت خواهید کرد.
مرحله ۳ : کد زیر را در فایل app/Http/Controllers/RedirectController.php کپی کنید.
app/Http/Controllers/RedirectController.php
1 2 3 4 5 6 7 8 9 10 11 12 13 | <?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 اضافه کنید.
app/Http/routes.php
1 2 3 4 | Route::get('rr','RedirectController@index'); Route::get('/redirectcontroller',function() { return redirect()->action('RedirectController@index'); }); |
مرحله ۵ : برای تست مثال، به URL زیر مراجعه کنید.
1 | http://localhost:8000/redirectcontroller |
مرحله ۶ :وجی به صورت زیر نمایش داده می شود.
در این جلسه در مورد هدایت (Redirections) در لاراول خواندیم. و دانستیم که متد Route :: view نیاز شما را برای مسیرهایی که فقط نیاز دارند یک view را نمایش دهند برطرف می کند. متد Route : : Redirect متدی است که نیاز شما را برای هدایت کردن به مسیر مورد نظر برطرف می کند.لاراول ۵٫۷ پر شده از ویژگی های جدید بزرگی که هر روز بیشتر و بیشتر می شوند.برای یادگیری این ویژگی ها با ما همراه باشید.