Перейти к основному контенту

Laravel redirect

В этой статье мы сделаем краткий обзор инструмента Laravel и расскажем, как настроить в Laravel redirect.

Что такое Laravel

Laravel — это PHP-фреймворк, который позволяет создавать проекты по паттерну проектирования MVC. Программная платформа бесплатная и имеет открытый исходный код (размещен на GitHub). Laravel нередко называют экосистемой веб-разработки. Появившись только в 2011 году, он уже является одним из самых популярных фреймворков. «Framework for artisans», как называют Laravel сами создатели, даёт разработчику свободу для творчества.

Преимущества фреймворка:

  • поддержка NoSQL,
  • готовые шаблоны, админ-панели и возможность подключать шаблоны CSS,
  • пакеты для создания модулей Composer,
  • позволяет определить отношения между объектами баз данных,
  • контроллеры для разделения запросов POST- и GET-,
  • автоматическая загрузка классов.

Laravel позволяет быстро и грамотно создать безопасный и надёжный веб-проект. Скачать программу можно с официального сайта.

Как настроить редирект в Laravel

В Ларавел создание перенаправлений происходит через отклики класса «Illuminate\Http\RedirectResponse».

  • Чтобы сделать простое перенаправление, введите:
return redirect('page');

Где page — это страница, на которую вы хотите сделать редирект.

  • Чтобы настроить переадресацию на предыдущую страницу, используйте команду:
return redirect()->back();

или

return back()->withInput();
  • Чтобы сделать RedirectResponse на роутер, можно применить несколько способов. Например, route:
return redirect()->route('login');

Параметры роутера можно передать в качестве второго аргумента route:

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

Где profile — это URI роутера.

  • Чтобы сделать переадресацию на контроллер, нужно передать контроллер и его методы в action. Для этого введите:
return redirect()->action('HomeController@index');

Где HomeController@index — данные о контроллере. При этом полное пространство имён контроллера подтянется автоматически.

Если вы хотите передать роутеру контроллера параметры, укажите их вторым аргументом:

return redirect()->action(
    'UserController@profile', ['id' => 1]
);
  • Чтобы настроить перенаправление с данными сессии в одной цепочке вызовов, используйте следующие команды:
Route::post('user/profile', function () {
    // Изменение профиля...

    return redirect('dashboard')->with('status', 'Profile updated!');
});

После того как пользователь будет переадресован, через синтаксис Blade можно вывести сообщение из сессии:

@if (session('status'))
  <div class="alert alert-success">
    {{ session('status') }}
  </div>
@endif

Теперь вы знаете, как настроить базовое перенаправление в Ларавел. Подробнее о настройке редиректа читайте в официальной документации.

Была ли эта статья полезной?
Пользователи, считающие этот материал полезным: 0 из 0