路由组中的通配符前缀干扰路由段 - Laravel 5.2

时间:2016-05-23 06:05:36

标签: php laravel

我有一个包含通配符前缀的路由组。前缀适用于国家/地区,例如website.com/Singapore/home或website.com/America/home。

此路线组中的某些路线中有一条slu ..

Route::group(['prefix' => '{country}'], function () { 


Route::get('home', 'HomeController@all');
Route::get('login', 'AuthController@login');
Route::get('user/{slug}', 'UsersController@show'); });

前两条路线正常工作。但是,包含对应于用户标题的段塞的第三条路线是错误的来源。处理此路由的控制器如下所示。

public function show($slug)
{
    $user = User::where('slug', '=', $slug)->first();
    return view('user.show', compact('user'));
}  

slu is混淆了laravel,我得到了这个错误。

"试图获得非对象"的属性,并指向'显示'上面的功能,特别是'用户'变量。

我认为laravel试图找到通配符前缀的slug(不存在)而不是用户的slug。我有什么想法可以解决这个问题吗?

0 个答案:

没有答案