【问题标题】:Differentiating static routes with variable routes区分静态路由和可变路由
【发布时间】:2017-07-27 06:02:44
【问题描述】:

我实际上想定义一个明确的路线。让我放弃一个例子。

Route::get('/profile/{slug}', function(){...});

此路由用于查看用户的个人资料。

但同样我想定义 -

Route::get('/profile/edit', function(){...});

显示编辑配置文件视图。

我无法实现它,因为它会将“edit”作为值发送给{slug}

我应该如何实现这一点,同时将两个路由保持在同一个组中并使用相同的中间件。

【问题讨论】:

    标签: laravel laravel-routing laravel-5.4


    【解决方案1】:

    尝试如下换行。

    Route::get('/profile/edit', function(){...});
    Route::get('/profile/{slug}', function(){...});
    

    首先它将检查edit,否则它将被传递给slug

    【讨论】:

    • 哇。实际上,我没想到它会起作用,但令人惊讶的是它起作用了。怎么会这样?它会为即将到来的路线添加任何例外吗?
    • 您的第一条路线为/profile/{slug},这就是为什么应用程序将/profile/* 之后的任何内容视为slug。因此,您的其他路线从未被调用过。 (如/edit
    • 好的。不过非常感谢。
    猜你喜欢
    • 2016-12-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-19
    • 2015-06-01
    • 2022-01-04
    相关资源
    最近更新 更多