当前位置: 首页 > 知识库问答 >
问题:

Laravel路线重定向次数太多

储臻
2023-03-14

我使用Laravel 5.4的项目和场景是,如果用户没有任何俱乐部创建然后在登录重定向用户俱乐部/创建页面。

下面是我的路线页编码

目录结构是路由/后端/access.php

Route::group([
    'prefix'     => 'access',
    'as'         => 'access.',
    'namespace'  => 'Access',
], function () {

Route::group([
    'middleware' => ['access.routeNeedsRole:3', 'first.run']
], function () {

   /*
    * Clubs Management
    */
    Route::group(['namespace' => 'Clubs'], function () {

    Route::get('create', 'ClubsController@showCreateOrganiser')->name('clubs.showCreateOrganiser');
        /*
         * Specific Club
         */
        Route::group(['prefix' => 'clubs/{club}'], function () {

            // Access
            Route::get('login-as', 'ClubsController@loginAs')->name('clubs.login-as');

        });

        //For when admin is logged in as user from backend
        Route::get('logout-as', 'ClubsController@logoutAs')->name('clubs.logout-as');


        /*Clubs CRUD*/
        Route::resource('clubs', 'ClubsController');


        //For DataTables
        Route::post('clubs/get', 'ClubsTableController')->name('clubs.get');

        });

    });
});

下面是我的FirstRunMiddleware。phpcode

Class FirstRunMiddleware
{

    public function handle($request, Closure $next)
    {
        if (Clubs::scope()->count() === 0) {
            return redirect()->route('admin.access.clubs.showCreateOrganiser');

        }

        $response = $next($request);

        return $response;
    }
}

它重定向了太多次,我收到错误消息说重定向了您太多次

我在这里做错了什么??

共有1个答案

江衡
2023-03-14

这是因为当它重定向到创建页面时,中间件将再次工作!它会检查俱乐部并再次将您重定向到同一页面,依此类推。

您需要在FirstRunMiddleware范围之外创建路由。

 类似资料:
  • 我使用任何类型的路由,然后在这个方法中,我在请求类型的基础上生成树。 路线 从控制器在检查类型之前我这样检查它

  • 我有一条基本路线,如下所示: 逻辑是我希望仅为数值。我现在要做的是,如果值是非数字的,则声明对此的重定向。假设的输入是。在这种情况下,我希望它重定向到值为的。 我尝试使用,但无法正常工作。它看起来像这样: 我更愿意将重定向放在组内,但如果这是唯一的方法,它可以放在组外。任何帮助都将不胜感激。 发生的情况是,如果我声明了路由重定向,就会出现404错误。 编辑:我想在文件。我知道如何在控制器中执行此操

  • 问题内容: 我正在尝试实现重定向模式,类似于StackOverflow所做的事情: 这是应该发生的情况的简单表格: 现在,我可以使用访问配置文件,但会生成一个。我已经尝试使用关键字参数和一些东西,但是我不确定什么是行不通的。 我如何将一条路由这样重定向到另一条路由? 问题答案: 更新:解决主要问题“我的路线出了什么问题”,最简单的调试方法是使用;例如: 在这种情况下,这确认端点设置正确。这是同时展

  • 我有一个价格范围搜索滑块。这是为寻找价格之间的范围。它工作得很好。如果我设定一个范围 在我的“添加到购物车”路线中,有一个名为“添加到购物车”的函数,用于将产品添加到购物车 在这种情况下,我面临一个问题“MethodNotAllowedHTTPException”,因为这是一个POST路由。 注意:我的add_to_cart功能正常工作。但面临的问题,而

  • 当我在web.php中定义了路由时,我在使用Laravel时遇到了一个路由未定义的错误,如下所示: 我正在从下面的代码重定向到路由 auth()代码可以工作,但当调用重定向时,我得到错误'route[home]not defined'。有没有人知道我怎么解决这个错误。任何帮助都会很好

  • 我向一条路线发出post请求,并显示另一个视图,其中包含一些我根据我在发出post请求的表单中输入的数据查询的数据,但当有人直接访问此路线时,我希望重定向到主页。 不幸的是,我经常遇到这样的错误: Symfony\Component\HttpKernel\Excense\METodNotAlloweHttpExcture没有消息 我的路线: