مشاوره رایگان
دریافت لینک های دانلود دریافت پستی درب منزل مبلغ کل: تومان
جهت دریافت کد تخفیف به کانال تلگرام مراجعه و یا با پشتیبان آنلاین هماهنگ نمایید

نحوه ریدایرکت در لاراول به زبان ساده


در این قسمت از آموزش لاراول می خواهیم درمورد redirect یا تغییرِ مسیر کاربر از صفحه ای به صفحه دیگر صحبت نماییم. ما اغلب برای این کار از متد redirect  استفاده می نماییم.

انواع تغییر مسیرها در لاراول را در این مقاله با هم مرور می کنیم :

  • Redirect به یک آدرس
  • Redirect به صفحه قبل
  • Redirect به یک Route نامگذاری شده
  • Redirect به یک Route نامگذاری شده به همراه پارامتر
  • Redirect به یک اکشن در Controller
  • Redirect به یک اکشن در Controller به همراه پارامتر
  • Redirect همراه با داده های Session

Redirect به یک آدرس

شما می توانید داخل controllerتان در هرجایی از برنامه، به مسیری دیگر redirect  کنید. فرض کنید نمونه کد زیر ، قسمتی از کد، یکی از اکشن متد های controolerتان است :

public function Test() {

    return redirect('user/profile');

}

 و باید این مسیر در route  هاتون تعریف شده باشد و قبلا برای آن route تعریف کرده باشید.

Route::get('user/profile', 'UserController@Profile');

Redirect به صفحه قبل

برای این کار در لاراول، دو روش موجود است. هم می توان از متد ()redirect استفاده کرد ، هم می توان از آن استفاده نکرد. به مثال دقت کنید:

تغییر مسیر با استفاده از متد ()redirect :

public function Test2() {

    return redirect()->back();

}

 تغییر مسیر بدون استفاده از متد  ()redirect :

public function Test2() {

    return back();

}

 

نامگذاری route ها در لاراول

در لاراول این امکان برای شما میسر است که برای route یا مسیر خود یک نام دلخواه اختصاص دهید. فایده کار این است، اگر مسیر دارای نام پیچیده ای باشد، می توان برای آن نام اختصاری تعیین کرد و این ، کارِما را برای مسیردهی ، راحت تر می کند. و همچنین می توان برای  redirect (تغییرمسیردادن) در برنامه از آنها استفاده نمود. برای نامگذاری routeها، از کلمه کلیدی as استفاده می شود.

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

نکته : ما برای روت user/profile،  نام profile را اختصاص دادیم.


enlightenedنکته آموزشی برای یادگیری بیشتر :

 آرگومان دوم برای متد Get در سیستم مسیردهی ، می تواند به اشکال زیر باشد :

  • اگر clouser یا توابع بی نام باشد در همان لحظه اجرا می گردد.
  • اگر string باشد، به controller و اکشن متد مورد نظرش اشاره می کند.
  • اگر array باشد، تنظیمات روتر را می گیرد و بعد به controller و اکشن متد مورد نظرش اشاره می کند.

Redirect به route های نامگذاری شده

درلاراول می توان با استفاده از متد route()  و نام یک route نام گذاری شده، کاربر را به مسیر دلخواه ارجاع داد و اگر route شما دارای پارامتر بود، می‌توان آن را به عنوان آرگومان دوم ارسال نمود، درغیر این صورت نیازی به ارسال پارامتر نیست.

return redirect()->route('profile', ['id' => 1]);

مثال:

جهت روشن تر شدن مطلب مثال زیر را مطالعه نمایید.

مرحله 1- وارد مسیر resources/views شوید و view ی به اسم test.php   بسازید.

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

مرحله 2- وارد فایل app/Http/routes.php می شویم و درآنجا route ی را برای  فایل test.php  تعریف می کنیم. این route را به نام testing نام گذاری می کنیم. همچنین ما route دیگری را به اسم redirect می سازیم.

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

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

مرحله 3- مرورگر خود را باز کنید و URL زیر را در آن وارد کنید.

http://localhost:8000/redirect

مرحله 4- بعد از اجرا کردن URL بالا   ، شما redirect می شوید به آدرس http://localhost:8000/test  در واقع ما به route ی با نام testing تغییر مسیر دادیم.

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

 

 Redirect به اکشن های یک controller

گاهی شما نیاز دارید بعد از عملیات خاصی که انجام دادید به اکشن متد خاصی از controller ارجاع داده شوید، و اگر اکشن متد controller پارامترهایی به عنوان ورودی می گیرد باید به شکل زیر عمل کنید، در غیر اینصورت نیازی به ارسال پارامتر نیست.

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

مثال :

مرحله 1 - دستور آرتیسان زیر را برای ساخت Controller را در command line تایپ می کنیم.

php artisan make:controller RedirectController --plain

مرحله 2 - بعد از ساخت controller پیامی مبنی بر موفقت آمیز بودن دستور فوق برای شما نمایش داده می شود.

مرحله 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 – کد زیر را در فایل app/Http/routes.php قرار دهید.

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

مرحله 5 - مرورگر خود را باز کنید و URL زیر را در آن وارد کنید.

http://localhost:8000/redirectcontroller

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

Redirect با داده های Session

در لاراول این امکان وجود دارد که، کاربر بتواند زمانی که به یک route تغییر مسیر می دهد، یک پیغام را نیز ارسال کند. به مثال زیر دقت کنید :

public function Test() {

    return redirect('home')->with('message', 'Welcome to clicksite !');

}

 

فصلِ: 28 , تعداد قسمت ها: 253 , سطح: صفر تا صد

این فصل در یک نگاه:

آشنایی با امکانات جدید لاراول ۷…

برخی از سرفصل های این پکیج آموزشی :   لاراول چیست و چرا ما لاراول استفاده میکنیم کامپوزر کارش چیه و نصب اون نصب لاراول آموزش نصب لاراول از طریق اینستالر آموزش نصب لاراول با استفاده ا…
فصلِ: 1 , تعداد قسمت ها: 2 , سطح: متوسط

این فصل در یک نگاه:

بهترین و پر بازده ترین روش تبدیل بازدیدکننده سایت به مشتری تبلیغات هدفمند و برند سازی هوشمندانه با ایمیل می باشد. ایمیل…

  وبینار(سمینار آنلاین) آموزش تکنیک های ایمیل مارکتینگ   اگر تا انتها این متن را مطالعه کنید نظر شما در مورد ایمیل مارکتینگ 180 درجه عوض می شود!! بر هیچکس پوشیده نیست که از سال 1972 که ای…
فصلِ: 4 , تعداد قسمت ها: 368 , سطح: صفر تا صد

این فصل در یک نگاه:

مباحث تکمیلی فریم ورک لاراول…

فصل اول :آموزش مقدماتی فریم ورک لاراول معرفی فریم ورک لاراول و پیشنیازهای انجام کار انجام کانفیگ های اولیه برای نصب و راه اندازی فریم ورک معرفی روش های نصب پروژه لاراولی از طریق سایت گی…
فصلِ: 1 , تعداد قسمت ها: 155 , سطح: صفر تا صد

این فصل در یک نگاه:

مباحث مقدماتی فریم ورک react.js…

توضیحات کلی مجموعه: فصل اول : آشنایی با مباحث مقدماتی فریم ورک react.js نصب و راه اندازی node.js  و کلیه پیش نیازهای لازم نصب فریم ورک react روی لوکال و انجام تست های لازم آغاز آشنایی …

تولید شده توسط کلیک سایت

پشتیبانی آنلاین
آماده پاسخگویی هستیم
انتخاب تصویر جهت ارسال:
در حال ضبط صدا

(جهت توقف و یا لغو ضبط از دکمه های زیر استفاده کنید)

توقف و ارسال :
لغو ضبط
در حال حاضر تمامی کارشناسان آفلاین هستند. همواره می توانید با شماره تلگرام / واتساپ 09010005000 به صورت آنلاین با ما در ارتباط باشید. جهت ورود به واتساپ کلیک کنید
0 پیام جدید
پشتیبان در حال تایپ ...
ارسال تصویر ضبط صدا
0 کارشناسان آنلاین می باشند
این گفت و گو توسط پشتیبان به اتمام رسید