Laravel 教程:重定向到命名路由或控制操作
重定向到命名路由
命名路由用于为路由指定特定名称。可以使用“as”块键指定名称。
Route::get('user/profile', ['as' => 'profile', function () { // }]);注意 – 在这里,我们将路由“user/profile”命名为“profile”。
示例
1。步骤 - 创建一个名为 test.php 的视图并将其保存在 resources/views/test.php 文件夹中。<html> <body> <h2>Example of Redirecting to Named Routes</h2> </body> </html>
2。步骤 - 在routes.php文件中,我们为test.php文件创建了一条路由并将其重命名为“testing”。我们还设置了一个路由“redirect”,将请求重定向到指定的路由“testing”。
app/Http/routes.php
Route::get('/test', ['as'=>'testing',function(){ return view('test'); }]); Route::get('redirect',function(){ return redirect()->route('testing'); });3。步骤 - 访问以下 URL 来测试命名路由示例。
http://localhost:8000/redirect
4。步骤 - 执行上述 URL 后,由于我们重定向到 http://localhost:8000/test,因此您将被重定向到名为“testing”的路径。步骤5 – 成功执行该URL后,原始URL将跳转到http://localhost:8000/test,您将得到以下输出:
重定向到控制操作
不仅仅是名称路由,但我们也可以将其重定向到控制器操作。我们只需将控制器和操作名称传递给操作方法,如下例所示。如果要传递参数,可以将其作为操作方法的第二个参数传递。
return redirect()->action(‘NameOfController@methodName’,[parameters]);
示例
1。步骤 1 – 执行以下命令创建 RedirectController。
php artisan make:controller RedirectController步骤2 - 成功执行后,您将得到以下输出:-

3。步骤 - 将以下代码复制到文件中:app/Http/Controllersph Redirect。应用程序/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('reindex','RedirectController@index'); Route::get('/redirectcontroller',function(){ return redirect()->action('RedirectController@index'); });- 请转到步骤 5,我们将使用以下 URL 作为测试示例。
http://localhost:8000/redirectcontroller6。步骤——输出结果如下所示。
版权声明
本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。