首先,我很乐意接受有关该标题的建议,因为我不知道如何在一行中解释我的问题。
我的路线看起来像那样
Route::get ('/i/{group?}/{name?}', 'Controller@index')->name('name');
问题是,当我转到/i//myname
时,它会引发路由异常。
我做了两个条件因为我在控制器中有严格的验证。我想保留这种结构,但是我应该采用什么途径来使两个可选变量都起作用?
实施例。当您打开/i//myname
以将您重定向到选择论坛页面时,以及/i/group//
或/i/group/
答案 0 :(得分:2)
我建议去选择参数。我的意思是你定义这样的路线:
Route::get ('/i', 'Controller@index')->name('name');
然后你把你的参数放到这个网址:
http://localhost/i?group=1&name=stack
从您的控制器中执行:
public function index(Request $request)
{
if ($request->has('group') {
$group = $request->group;
}
...
}
你明白了。这可能有所帮助,但可能不是您想要的。