将@(at)符号添加到laravel route

时间:2017-11-20 13:48:36

标签: laravel laravel-5.5

我想将@符号添加到网址。就像this一样。我在web.php中试过这个。 Route::get('/@{user}', 'ProfilesController@show'); 它不起作用。然后我尝试Route::get('/@/{user}', 'ProfilesController@show'); 它有效,但我怎样才能删除(斜杠)' /'在@符号和用户ID之间?

用户模型:

public function getRouteKeyName()
{
    return 'nick';
}

ProfilesController:

public function show(User $user)
{
    return view('profiles.show', [
        'profileUser' => $user
    ]);
}

web.php:

Route::get('/@{user}', 'ProfilesController@show');

2 个答案:

答案 0 :(得分:1)

你拥有它的方式应该有效。检查控制器代码以确保接受变量。以下代码是我们在网站上工作的内容。

<强> web.php Route::get('/@{username}', [ 'as' => 'profile', 'uses' => 'ProfilesController@show' ]);

<强> ProfilesController.php public function show($username){ ... }

答案 1 :(得分:-1)

您最好重构代码.. @符号是保留字符,如here所述