Laravel重定向


命名路线用于为路线指定具体名称。该名称可以使用 as 数组键进行分配。

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

注意 - 在这里,我们已经给 路由 用户/配置文件 指定了名称 配置 文件

重定向到命名路线

观察下面的例子来了解更多关于重定向到命名路由的信息 -

第1步 - 创建一个名为test.php的视图并保存在

resources / views / test.php

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

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

应用程序/ HTTP / routes.php文件

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后,您将被重定向到http:// localhost:8000 / test,因为我们正在重定向到指定的路由 测试

第5步 - 成功执行URL后,您将收到以下输出 -

Virat甘地

重定向到控制器操作

不仅命名路由,而且我们也可以重定向到控制器操作。我们只需简单地将控制器和 动作 名称传递给动作方法,如下例所示。如果你想传递一个参数,你可以把它作为action方法的第二个参数传递。

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

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

php artisan make:controller RedirectController --plain

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

重定向控制器

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

app / Http / Controllers / RedirectController.php

应用程序/ HTTP /控制器/ 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中 添加以下行。

应用程序/ HTTP / routes.php文件

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

第5步 - 访问以下URL以测试示例。

http://localhost:8000/redirectcontroller

第6步 - 输出将如下图所示。

RedirectController.jpg