Laravel 重定向

Laravel 重定向

命名路由用于给路由指定特定的名称。可以使用 “as” 数组键来指定名称。

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

注意 - 在这里,我们给路由 user/profile 起了一个名字 profile

重定向到命名路由

示例

观察以下示例,了解更多关于重定向到命名路由的内容。

步骤1 - 创建一个名为test.php的视图,并保存在 resources/views/test.php

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

步骤2 - 在 routes.php 中,我们设置了 test.php 文件的路由。我们将其重命名为 testing 。我们还设置了另一个路由 redirect ,它将请求重定向到命名的路由 testing

app/Http/routes.php

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

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

步骤3 - 访问以下网址测试已命名的路由示例。

http://localhost:8000/redirect

步骤4 − 执行以上URL后,将会重定向到 http://localhost:8000/test,因为我们正在重定向到名为 testing 的路由。

步骤5 − 成功执行URL后,将获得以下输出 −

Laravel 重定向

重定向到控制器操作

不仅可以通过命名路由重定向,我们还可以重定向到控制器操作。只需简单地将控制器和操作名称作为action方法的参数传递,示例如下。如果您想要传递参数,可以将它作为action方法的第二个参数传递。

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

示例

步骤1 - 执行以下命令创建一个名为 RedirectController 的控制器。

php artisan make:controller RedirectController --plain

步骤2 - 成功执行后,您将收到以下输出 –

Laravel 重定向

步骤3 - 将以下代码复制到文件

app/Http/Controllers/RedirectController.php

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 中添加以下代码。

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 - 输出将会出现如下图所示。

Laravel 重定向

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程