表单没有进行正确的查询

form does not make the correct query

我希望我的管理员用户能够批准职位发布,所以我在我的职位发布控制器中定义了一个方法,如下所示:

public function approved(Request $request, JobPost $jobpost)
{
    //save
    $approved = $jobpost->update([
        'approval'=> $request->input('approved')
        ]);

    if($approved)
    {     $user = auth()->user();
        $jobposts = auth()->user()->JobPosts;
        $company = auth()->user()->company;
       return view('/JobPosts/admin/WaitingJobPosts',[
           'jobposts' => $jobposts,
           'company' => $company,
           'user' => $user,
           'approved'=> $approved
       ]);
    } else{
        var_dump($approved);
    }


}

然后我在 web.php:

中为它定义了一个路由
Route::patch('jobposts/{job_post}/approved', 'JobPostsController@approved')->name('jobposts.approved');

在我看来,我已经定义了这样一个表单:

 <form method="post" action="{{ route('jobposts.approved', ['job_post' => $jobpost])}}">
                                {{ csrf_field() }}
                                {{ method_field('PATCH') }}
                                <input type="hidden" name="approved" value="1">
                                <div class="form-group">
                                    <button type="submit" class="btn btn-block btn-success">تایید</button>
                                </div>
                            </form>

它 returns 布尔值(假)。所以我的查询不起作用。为什么?

您应该使用 $job_post 更改批准方法中的 $jobpost 输入,因为您在路线中将其定义为 {job_post}