Laravel 使用段塞和id(破折号分隔)进行布线?
这是我的路线,第一条线坏了。如何修复它?我的软件规范不允许在第一次布线中使用斜杠(/)而不是破折号(-) 对于下面的路由器,样本具有相同的掩码Laravel 使用段塞和id(破折号分隔)进行布线?,laravel,laravel-routing,Laravel,Laravel Routing,这是我的路线,第一条线坏了。如何修复它?我的软件规范不允许在第一次布线中使用斜杠(/)而不是破折号(-) 对于下面的路由器,样本具有相同的掩码 router->get('{slug}-{id}', 'Controller@method'); router->get('{otherSomething}', 'Controller@method2'); 假设您的其他东西没有以数字结尾,您可以使用,例如,您可以使用如下id定义路线: site.com/slug-name-and-sth-
router->get('{slug}-{id}', 'Controller@method');
router->get('{otherSomething}', 'Controller@method2');
假设您的
其他东西
没有以数字结尾,您可以使用,例如,您可以使用如下id定义路线:
site.com/slug-name-and-sth-100
site.com/other-something
现在它应该可以工作了。但是,您需要记住将此路线放在路线之前:
$router->get('{slug}-{id}', 'Controller@method')->where('id','[0-9]+');
否则就不行了
编辑
如果两个URL可以具有相同的格式,您应该完全删除{slug}-{id}
路由,并将{otherSomething}
的所有流量引导到一个方法中(method2
)
现在,您应该解析$otherSomething
变量并决定应该做什么:
- 或者您决定它的格式是
na您现在可以为此运行服务了{slug}-{id}
- 您将为其他情况运行其他服务
$router->get('{otherSomething}', 'Controller@method2');