这里帮助不大。我有两个模型用户和帖子。所以我想限制用户编辑其他用户的帖子,所以我使用了这个:
public function boot()
{
$this->registerPolicies();
//
Gate::define('update-post', function (User $user, Post $post) {
return $user->id === $post->user_id;
});
}
在 App\Providers\AuthServiceProvider.php 中。在我的控制器中的编辑方法中,我使用以下代码:
public function edit($id, Post $post, User $user)
{
if(Gate::allows('update-post', $post)){
$posts = Post::find($id);
return view('pages.edit')->with('posts', $posts);
}
return redirect('/')->with('message', 'you cannot edit this post');
}
它可以工作,但是当我从两个用户帐户中单击编辑按钮时,它会转到我在编辑控制器上重定向的内容。
那我该如何解决呢,求大神帮忙!!!