【发布时间】:2020-08-29 20:31:24
【问题描述】:
我是 Laravel 的新手,我正在制作一个包含用户和帖子的迷你博客,每个人都可以看到帖子,每个用户都可以删除和更新他们自己的帖子,所以我使用授权策略。
在创建策略时,我意识到两者的代码(删除/更新)是相同的
public function update(User $user, Post $post)
{
return $user->id === $post->user_id;
}
public function delete(User $user, Post $post)
{
return $user->id === $post->user_id;
}
我应该保持这种方式还是应该只使用一种方法,因为它是多余的? 我的意思是,如果我只使用一种方法,我可以将它从 PostController 的构造函数中的一行应用到我想要的所有 Controller 方法
$this->middleware('can:policyMethodName, post')->except('show', 'index', 'create');
在 Laravel 中应用策略的最佳实践是什么?
【问题讨论】: