缺少[Route:user.profile]的必需参数

时间:2020-03-27 14:47:12

标签: php laravel laravel-routing

我正在尝试在laravel应用中创建用户个人资料,每个用户都可以查看每个用户的个人资料,但出现错误

缺少[Route:user.profile]的必需参数

Screenshot of the error

这是我的代码:

web.php

Route::get('user/profile/{id}', 'UserProfileController@profile')->name('user.profile');

控制器(UserProfileController)


namespace App\Http\Controllers;

use Illuminate\Http\Request;

use App\User; 

class UserProfileController extends Controller
{
    //
    public function __construct()
    {
        $this->middleware('auth', ['except' => [ 'profile']]);
    }
    public function profile($id)
    {
        $user = User::find($id);
        return view('user.profile', compact('user') );
    }

}

查看(profile.blade.php)


@section('content')
<div class="container">
    <div class="row">
        <div class="col-md-10 offset-md-1">
            <div class="card">
                <div class="card-header">{{ $user->name }}'s Profile page</div>

                <div class="card-body">
                    Hi, {{ $user->name }} This is a private profile page!!!
                </div>
            </div>
        </div>
    </div>
</div>
@endsection

2 个答案:

答案 0 :(得分:1)

如果您认真阅读了错误,则该错误说明了有关app.blade.php的信息,因此请转至app.blade.php并查找错误。 也许您应该寻找**

锚标签将ID传递给它

**

并为新版本的laravel添加更多内容,您可以使用模型绑定来减少代码

公共功能配置文件(用户$ user)

{

           return view('user.profile')->withUser($user);
}

答案 1 :(得分:0)

您的Laoutouts / app.blade中的问题 您忘记了必需的“ id”参数。 使用 {{route('user.profile',$ id)}}